Git ve SVN Arasındaki Fark

Git vs SVN

Git ve SVN'nin ikisi de yazılımdır. Git SCM, kaynak kodu yönetimi ve dağıtılmış bir revizyon kontrol sistemidir. SVN bir revizyon kontrol ve yazılım versiyonlama sistemidir.

 Git, temel vurgusu hız olan bir SCM'dir. Linus Torvalds tarafından Linux çekirdeği için geliştirilmiştir. Revizyon izleme kapasiteleri ve eksiksiz geçmişi olan bir deposu vardır. Bu havuz merkezi bir sunucuya veya ağ erişimine bağlı değildir. Özgür yazılımdır. Git GNU altında dağıtılır ve bakımı Junio ​​Hamano tarafından denetlenir. Apache Subversion veya SVN, açık kaynak lisansı altında dağıtılır. Dağıtılmamış bir VCS, Sürüm Kontrol Sistemidir. Merkezi veya merkezi bir sunucuya sahip bir havuzu yoktur. Temelde kaynak kod, dokümantasyon ve Web sayfalarının geçmiş ve güncel sürümlerini korumak için kullanılır. SVN'nin temel amacı CVS, Eşzamanlı Sürüm Sisteminin halefi olarak kullanılmaktır. CollabNet, Inc tarafından geliştirilmiştir..

Git Git'te depolanan içerik meta veridir. İçeriği, daha büyük bir boyuta sahip olan .git klasörü adlı klasörde depolar. Makinedeki .git klasörü klonlanan havuzdur. Klasör, merkezi depodaki gibi tüm etiketlerden, sürüm geçmişlerinden, dallardan vb. SVN dosyaları saklar. Klonlanmış bir depoları yok.

Branches Git dalları ile çalışmak daha kolaydır. Sistem, dosyaları hızlı bir şekilde birleştirmeye ve birleştirilmemiş dosyaları bulmaya yardımcı olur; SVN dalları aslında depoda bulunan bir klasördür. Dalları birleştirmek için özel komutlar gereklidir.

N SVN'nin genel bir revizyon numarası vardır, revizyon numarası bir kaynak kodun anlık görüntüsüdür; Git buna sahip değil.

 Git kriptografik olarak karma içeriğe sahiptir. Bu, SHA1 karma algoritması olarak adlandırılan bir algoritmanın kullanılmasıyla yapılır. Bu özellik, içeriğin ağ sorunları veya disk hataları nedeniyle meydana gelen depo bozulmasından korunmasına yardımcı olur.

Özet:

  1. Git dağıtılmış bir VCS'dir; SVN dağıtılmamış bir VCS'dir.
  2. Git'in merkezi bir sunucusu ve deposu vardır; SVN'nin merkezi bir sunucusu veya deposu yok.
  3. Git'teki içerik meta veri olarak depolanır; SVN içerik dosyalarını saklar.
  4. Git şubelerinin çalışması SVN şubelerinden daha kolaydır.
  5. Git'in SVN gibi global revizyon numarası özelliği yok.
  6. Git, SVN'den daha iyi içerik korumasına sahiptir.
  7. Git Linus Torvalds tarafından Linux çekirdeği için geliştirildi; SVN, CollabNet, Inc tarafından geliştirilmiştir..
  8. Git GNU altında dağıtılır ve bakımı Junio ​​Hamano tarafından denetlenir; Apache Subversion veya SVN, açık kaynak lisansı altında dağıtılır.