Git nedir?
Git'i projenizin otomatik arşivcisi gibi düşünebilirsiniz. Bir belgenin 'v1', 'v2', 'final', 'final-son' kopyalarını elle saklamak yerine Git, her değişikliği 'commit' (kaydedilmiş sürüm) olarak geçmişe işler: kim, ne zaman, neyi değiştirdi, hepsi kayıt altındadır. Proje istenildiği an önceki herhangi bir durumuna geri döndürülebilir; hiçbir şey gerçekten kaybolmaz.
Git, 2005 yılında Linux işletim sisteminin yaratıcısı Linus Torvalds tarafından geliştirildi ve bugün büyük bir açık kaynak topluluğu tarafından sürdürülüyor. Ücretsizdir ve GPL-2.0 lisansıyla açık kaynak olarak dağıtılır. Bireysel geliştiricilerden en büyük teknoloji şirketlerine kadar neredeyse tüm profesyonel yazılım projeleri Git üzerine kuruludur.
Ekip çalışmasında Git'in asıl gücü 'branch' (dal) ve 'merge' (birleştirme) mekanizmasıdır. Her geliştirici ana koddan ayrılan kendi dalında çalışır (biri yeni sayfa yaparken diğeri hata düzeltir) ve kimse kimsenin işini bozmaz. İş bitip kontrol edildikten sonra dal ana koda birleştirilir. Bu yöntem, e-postayla 'son_versiyon_final2.zip' gönderme kaosunu tamamen ortadan kaldırır.
Git'i GitHub veya GitLab ile karıştırmamak gerekir: Git bilgisayarda çalışan araçtır, GitHub ise Git projelerini internette barındırıp paylaşmaya yarayan platformdur. Basit bir benzetmeyle: Git fotoğraf makinesi, GitHub ise fotoğrafların yüklendiği albüm sitesidir. Kod hem geliştiricilerin bilgisayarında hem de uzak sunucuda tutulduğu için kaybolma riski neredeyse sıfıra iner.
İşletmeniz için ne anlama geliyor?
Site sahibi için Git bir sigortadır. Siteye yapılan her güncelleme geçmişe kaydedilir: yeni bir özellik sorun çıkarırsa site dakikalar içinde son çalışan sürüme geri döndürülebilir. Ayrıca kod tek bir kişinin bilgisayarına 'hapsolmaz': yarın başka bir geliştirici veya ajans projeyi tüm geçmişiyle devralabilir.
SaytPro bunu nasıl kullanıyor?
SaytPro, Next.js ön yüzlerden Django arka uçlara kadar tüm projeleri Git depolarında tutar. Yeni özellikler ayrı dallarda geliştirilir, kontrol edilir ve ancak ondan sonra ana koda birleştirilir. Canlı sunuculara dağıtım (deploy) da Git üzerinden yürütülür: sunucu onaylanan sürümü çeker, bir sorun çıkarsa önceki sürüme dönmek kolaydır.


