Subversion (SVN) vs Git

Bu konu sizin aslında, “hangi versiyon kontrol sistemini kullanmalıyım?” sorunuza da yanıt olabilecek bir niteliktedir.

Subversion (Svn) ve Git Versiyon Kontrol Sistemleri Karşılaştırması

Takımınız için en iyi yazılım deposunu (repository) seçerken, bir takım önemli faktörler vardır. SVN (Subversion) geçtiğimiz yıllarda üretimde fiili olarak bir standart haline geldi ve kullanıldı. Ancak, daha sonradan hayatımıza Git diye bir şey girdi.

Git, Linus Torvalds tarafından Linux çekirdek geliştirilmesi amacıyla geliştirilmiş versiyon kontrol sisteminin dağıtılmış versiyonudur. Yıllar içerisinde, yazılım geliştirme amacıyla kullanılmış ve özellikle Open Source projelerin oluşturulmasında rol alarak da çok büyümüştür. Git, çoğu takım için daha iyi bir çözüm olmasına rağmen, SVN ile kıyaslandığında azıcık daha öğrenmesi zor olarak nitelendirilebilir.

Svn & Git farklarının objektif olarak özeti

  • Git Svn den epeyce hızlıdır.
  • SVN ile bir alt ağacı(subtree) indirip çalışabilirsiniz, ancak Git’te tüm projeyi klonlamanız gerekir. Bu klonlama ile kendinize geçmişi dahil bir kopya üretmiş olursunuz.
  • Git depoları, SVN ye kıyasla epeyce daha küçüktür. Örneğin Mozilla projesi için 30 kat daha küçüktür)
  • Git, baştan itibaren dağıtma amaçlı tasarlandığından, her geliştiriceye olabildiğince yerel kontrol imkanı sağlar. (örneğin bir şeyi yapıp kendinize commit edebilirsiniz. )
  • Git branch’ları (yan dalları) , SVN’e göre basit ve daha az kaynak harcarlar.
  • Git branch’lar kendi geçmişini tutarlar.
  • Git branchlar üzerinde daha çok denetim ve karıştırma (merge) imkanı sağlar.
  • Git depo dosyaları basittir. Tamir etme vb işlemlerinde ihtimaliz daha yüksektir.
  • SVN depolarını merkezi olarak yedeklemek daha basittir.
  • Git depo klonları, full bir klondur. Yani onun üzerinden yeni bir repo yapabilirsiniz.
  • SVN nin kullanıcı arayüzü, Git’inkinden daha gelişmiştir.
  • SVN nin versiyonlarında (revisions) dolaşmak 1,2,3,… şeklinde isim verdiğinden çok daha basittir. Git, ne idüğü belirsiz SHA-1 hash’ler kullanıyor.

Kaynaklar : GitSvnComparison, subversion_git_comparison

 

6 Comments

    Subversion (SVN) vs Git | Kara Kule

    […] Sistemleri Karşılaştırması Takımınız için en iyi yazılım depos… Devamı için : Subversion (SVN) vs Git Share this:TwitterFacebookBunu beğen:BeğenBunu beğenen ilk kişi olun. By ahmet orsorlu […]

    Subversion (SVN) vs Git « kodluyorum

    […] Sistemleri Karşılaştırması Takımınız için en iyi yazılım depos… Devamı için : Subversion (SVN) vs Git Share this:TwitterFacebookBunu beğen:BeğenBunu beğenen ilk kişi […]

    Subversion (SVN) vs Git | Boğaç Aslanyürek

    […] Sistemleri Karşılaştırması Takımınız için en iyi yazılım depos… Devamı için : Subversion (SVN) vs Git This entry was posted in Professional and tagged git, hangi versiyon kontrol sistemini […]

    Subversion (SVN) vs Git « Murat SAÇ

    […] Sistemleri Karşılaştırması Takımınız için en iyi yazılım depos… Devamı için : Subversion (SVN) vs Git Share this:TwitterFacebookBunu beğen:BeğenBunu beğenen ilk kişi olun. […]

    Subversion (SVN) vs Git | yusufozkay

    […] Sistemleri Karşılaştırması Takımınız için en iyi yazılım depos… Devamı için : Subversion (SVN) vs Git Share this:TwitterFacebookBunu beğen:BeğenBunu beğenen ilk kişi olun. Bu yazı Uncategorized […]

    Boğaç Aslanyürek

    Git her bir versiyonun tam içeriğini SHA-1 algoritmasından geçirerek benzersiz bir hash kodu oluşturuyor. İçerikte en ufak bir bir değişiklik bile yeni bir hash kodu oluşturacağından, elimizdeki hash koduna bakarak bir versiyonun doğru olduğuna emin olabiliyoruz. Ne idüğü belirsiz ifadesine açıklama getireyim dedim 🙂 Şu yazımda da belirtmiştim: http://dubluve.net/2012/03/31/git-versiyon-kontrol-sistemine-giris/

Bir Cevap Yazın