husonet | Tarih: 14.10.2016
Sürüm, versiyon kontrol sistemleri arasında yer alan Git nedir?
Git nedir? Sürüm, versiyon sistemlerinde kullanmamız bizlere ne avantajlar sağlar?
Git, Dünya üzerinde bugüne kadar en çok kullanılan ve tercih edilen versiyon kontrol sistemidir. Git versiyon kontrol sistemi aslen Linux işletim sistemi çekirdeği geliştiricisi Linus Torvalds tarafından 2005 yılında geliştirilen ve geliştirilmeye devam eden açık kaynak kodlu bir projedir. Açık kaynak kodlu ve Ticari projelerde oldukça fazla tercih edilen Git versiyon kontrol sistemi Linux ve Windows kullanıcıları oldukça kolay bir şekilde çalışmalarını sunuculara aktarır ve yenilerler. Özetle Git bütünleşik geliştirme ortamı üzerinde iyi çalışır.
Git dağıtık bir mimariye sahiptir. Bir zamanlar popüler olan sürüm kontrol sistemlerinde SVN subversiyon gibi yaygın olarak kullanılan sistemler de Git gibi her geliştiri yapan icin kodların kopyasını deposunda tutar, istenildiği zaman geçmişe yönelik değişiklikleri tarihsel ve satır bazlı izleme olanağı sağlar.
Git düşünülerek performans, güvenlik ve esneklik ile tasarlanmıştır.
Performans
Diğer alternatifleri ile karşılaştırıldığında Git sürüm kontrol sisteminin performans özellikleri çok güçlüdür. Yeni yapılan değişiklikleri, dallanma, birleştirme, karşılaştırma geçmişte yapılan sürüm değişikliklerini performans için optimize etmiştir. Git, içinde uygulanan algoritmalar kodun ne zaman ve nasıl değiştirildiğini nitelikleri ve erişim desenleri hakkında oldukça derin bilgi verir.
Dosya ağacının depolama ve sürüm geçmişi ne olması gerektiğini belirlerken bazı diğer sürüm kontrol uygulamalarının aksine, Git dosya isimleri yerine içerikle ilgilenir. Git depo dosyalarının nesne biçimi delta (içerik farklılıkları saklamak) kodlaması şeklinde, sıkıştıram işlemi uygulayarak bir arada kullanır ayrıca dizin içeriğini ve sürüm meta nesneleri saklar ve ayrıca bu sebeplerden önemli performans avantajları sağlar.
Güvenlik
Git öncelikli olarak yönetilen kaynak kodunun bütünlüğü ile dizayn edilmiştir. Dosyaların içeriğinin yanı sıra, dosya, dizinler, sürümler ve etiketler arasındaki gerçek ilişkileri kurar. Git deposunda tüm bu nesneler SHA1 denilen kriptografik güvenli karma algoritması ile teminat altına alınmıştır. Bu şifreleme türü hem kaza ile kötü niyetli değişime karşı kodu ve değişiklik geçmişini koruyan ve tarihsel olarak izlenebilir olmasını sağlar.
Git kullanarak siz kaynak kodunuzu içerik geçmişinden emin olabilirsiniz.
Diğer sürüm kontrol sistemlerinin çoğunda geçmişe yönelik değişikliklerde hiç bir koruma sistemleri yoktur. Bu durum bir çok kurum ve kuruluşlar için güvenlik açığı oluşturabilir.
Esneklik
Git'in en önemli tasarım hedeflerinden biri, esnekliktir. Git çeşitli bakımlardan oldukça esnektir. Küçük ve büyük projelerde, mevcut sistemlerde, protokeller ile uyumluluk verimliliğini çeşitli doğrusal olmayan iş akışları destekler.
Git değişim tarihinin bir parçası olarak ve dallanarak depolanır. Örneğin eksi tarihe dönme ve birleştirme gibi.
İlgili Konular
Git kullanımı