Haydi #Git Kullanalım!

Arkadaşlar,

Bir yazılımcıysanız ve Git kullanmıyorsanız belki size kız verirler ama muhtemelen iş vermezler! 🙂 (Şimdi bana abartıyorsun, ne alakası var canım? veyahut o kadar da değil! demeyin, çünkü onlar derler.. derler..🙂

Peki neden bu kadar önemli bu Git?” derseniz, şöyle bir bakalım ama öncesinde kısaca Sürüm Kontrolüne ve Yazılımlarına değinelim:

Versiyon/sürüm kontrolü, en yalın hali ile proje kaynak kodunun yönetimidir, diyebiliriz. Özetle, sürüm kontrolünün faydası; kodların güvenli bir şekilde saklanması, birden fazla kişi ile aynı zamanda çalışabilme olanağı (çakışmaları önleme), versiyonların kontrolü, kolay bir şekilde kod paylaşımı ve revizyon diyebiliriz. Projelerde versiyon takibinin önemi tartışılmaz, neticede yazılımcı da bir insan ve proje versiyonlarını kaydederken, korurken veyahut x versiyona geri dönmek istediğinde bunu sağlayamayabilir ya da bunlardan birisinde hataya düşebilir. İşte bu noktada versiyon kontrol yazılımları devreye girer. Tabi, aynı zamanda yapılan işlerin takibi ve aşamaları da göz önüne serilmiş oluyor.

Sürüm Kontrol Sistemleri:

Peki versiyon kontrol yazılımları, denildiğinde aklımıza neler gelir? CSV (merkezi model), SVN (merkezi model) ve GIT (dağınık model). SVN, CSV ‘yi örnek alarak üretilmiştir ve tabi ki amacı, CSV ‘den daha iyi bir versiyon kontrol yazılımı olmaktır:

SVN Nedir? SubVersioN (alt sürüm) kelimesinin kısaltılmış halidir. Proje dosyalarınızı bir depoda tutar ve sürüm denetimini sağlar.

CSV, sadece dosya bazlı çalışır, SVN ise dosya ve dizinler için yapılan tüm işlemleri takip eder. SVN Nasıl çalışır? Bir SVN sunucusu kurarsınız ve projenizi bu sunucuya yüklersiniz, değişiklik yapabilecek kullanıcılar, SVN Client olarak bağlanıp, projeyi yerel bilgisayarına çekip, çalışmalarını yapıyor ve (yorum seçeneği ile) sunucuya dosyalarını geri yükleyebiliyor. Aşağıdaki şema SVN Nasıl Çalışır? sorusunun özetidir.

Subversion, merkezi bir sürüm kontrol sistemidir: tüm ekip üyeleri, uzaktaki bir sunucuya yerleştirilen tek bir merkezi depoya yönelik çalışırlar.

 

Şimdi gelelim GIT ‘e, Git de SVN ‘den sonra Linux çekirdek geliştirilmesi amacıyla geliştirilmiş dağınık bir versiyon kontrol sistemidir ve şu an versiyon kontrol sistemlerinin en yaygın olanıdır diyebiliriz.

  • Sürüm yönetim kolaylığı:

Tüm dosya ve dizin  değişiklikleri detaylıca kaydedilir ve bu versiyonları dilediğiniz gibi yönetebilirsiniz.

  • Ekip çalışması

Bir proje üzerinde ekip arkadaşlarınızla eş zamanlı olarak rahatlıkla çalışabilir ve kodlarınızı birleştirebilirsiniz.

  • Offline özelliği:

Git, bu özelliği ile diğer versiyon kontrol sistemlerinden farklı olarak herhangi bir ağ bağlantısına sahip olmadan projenizi geliştirmenize olanak sağlar.

  • Performans ve Hafiflik:

Git, diğerlerine nazaran gerçekten hızlıdır ve az yer kaplamasıyla da kullanıcı dostudur. (Git depoları, SVN ‘e oranla epey küçüktür). Local ‘de full kontrol sağlar. Git branch ‘ları SVN ‘ye göre daha tasarrufludur ve kendi geçmişlerini tutarlar.

bkz: https://svnvsgit.com/#repository-size-benchmarks

bkz: git download-> https://git-scm.com/downloads

bkz: https://help.github.com/articles/what-are-the-differences-between-subversion-and-git/

 

 

Bir önceki yazımız olan Change MySQL Reset/Update Password - Root SSH - Kullanıcı ve Şifre İşlemleri başlıklı makalemizde 28000, access ve Change hakkında bilgiler verilmektedir.

Bir Cevap Yazın