Bir belge üzerinde çalışırken "eski haline dönmek istesem ne yapardım?" diye düşündünüz mü? Ya da birkaç kişiyle aynı dosyayı düzenlerken birinin değişikliği diğerinin üzerine yazmış olması? İşte git nedir sorusu tam burada anlam kazanır. Git nedir temel olarak açıklandığında: yazılım geliştirme sürecinde dosyalardaki değişiklikleri takip eden, ekiplerin aynı proje üzerinde birlikte çalışmasına olanak tanıyan bir versiyon kontrol sistemidir. Ama bu tanım soyut kalabilir; somutlaştıralım. Düşünün ki bir roman yazıyorsunuz. Her gün yeni bir bölüm ekliyor, bazı bölümleri baştan yazıyorsunuz. Bir hafta sonra üç bölüm geri gitmek ve orada bir değişiklik yapmak istiyorsunuz. Bunu Word belgesi olarak tutuyorsanız, büyük ihtimalle o eski versiyona ulaşamazsınız. Git ise her kayıt anını (commit) saklayan bir zaman makinesi gibi çalışır. Git nedir sorusuna verilen teknik cevaplarda üç kavram öne çıkar: **Repository (Depo):** Projenin tüm dosyaları ve değişiklik geçmişinin saklandığı yer. Yerel bilgisayarınızda olabilir, ya da GitHub gibi bir platformda. **Commit:** Projenin belirli bir andaki fotoğrafı. Her commit, ne değiştiğini, kimin değiştirdiğini ve ne zaman değiştiğini kayıt altına alır. **Branch (Dal):** Ana koddan ayrılarak yeni bir özellik geliştirmek veya hata düzeltmek için açılan paralel çalışma alanı. Hazır olduğunda ana koda birleştirilir. Ekip çalışması açısından git nedir sorusu özellikle önem taşır. Birden fazla geliştirici aynı projede çalışırken kimin ne değiştirdiği net bir şekilde görülür. Çakışmalar (conflict) olduğunda sistem bunu bildirir ve çözüme yönlendirir. Yeni başlayanlar için en yaygın korku "bir şeyi mahvederim" kaygısıdır. Git tam olarak bu kaygıyı ortadan kaldırmak için vardır. Bir branch açın, istediğiniz değişikliği yapın. İşe yaramadıysa o branch'i silin; ana kod etkilenmez. Bir nevi "deneme alanı" sunar. Git'i öğrenmek, programlamaya başlayanların sıklıkla ertelediği ama bir kez öğrendiklerinde "bunu neden daha önce kullanmadım" dedikleri araçlardan biridir.