Bu bölümde, Git ve versiyon kontrolü gibi kavramların temellerini öğrenecek, Git’in nasıl çalıştığını anlamanızı sağlayacak açıklamalar ve temel terimlerle karşılaşacaksınız. Hadi başlayalım!
Versiyon Kontrolü Nedir?
Versiyon kontrolü, bir projede yapılan değişiklikleri kayıt altına alarak, gerektiğinde önceki sürümlere dönebilmenizi sağlayan bir sistemdir.

Örneğin:
Bir yazılım geliştirirken aynı dosya üzerinde farklı değişiklikler yaparsınız. Bu değişiklikleri kayıt altına almak ve kimin, ne zaman, neyi değiştirdiğini görmek için versiyon kontrolü kullanılır.
Versiyon Kontrolü Türleri:
- Yerel (Local): Sadece kendi bilgisayarınızda yapılan takip.
- Merkezi (Centralized): Tüm kayıtlar tek bir sunucuda saklanır. (Örnek: SVN)
- Dağıtık (Distributed): Her kullanıcının kendi bilgisayarında tam bir proje kopyası vardır. (Örnek: Git)
Git Nedir?
Git, yazılım projelerindeki versiyon kontrolü için kullanılan açık kaynaklı bir sistemdir. Linus Torvalds tarafından 2005 yılında geliştirilen Git, birden fazla kişiyle aynı proje üzerinde çalışmayı kolaylaştırır.

Özellikleri:
- Değişikliklerin takibini sağlar.
- Geriye dönük olarak projedeki tüm adımlara ulaşabilirsiniz.
- Dağıtık bir yapıya sahiptir. Her kullanıcı, tüm proje geçmişinin bir kopyasına sahiptir.
Git’i neden kullanmalıyız?
- Kodun farklı sürümlerini yönetmek.
- Ekip çalışmasını kolaylaştırmak.
- Hataları takip edip hızlıca düzeltmek.
Git’in Çalışma Prensipleri
Git üç ana bölümden oluşur:
- Çalışma Alanı (Working Directory):
- Proje dosyalarınızın çalıştığınız yerel kopyasıdır.
- Bu alanda yapılan değişiklikler Git’e henüz kayıt edilmemiştir.
- Staging Alanı (Index/Stage):
- Git’e eklenmesi gereken dosyaların geçici olarak tutulduğu yerdir.
git add
komutuyla dosyaları buraya eklersiniz.
- Repository (Depo):
- Tüm değişikliklerin kalıcı olarak kayıt altına alındığı yerdir.
git commit
komutuyla değişiklikleri burada saklarsınız.

Özet Akış:
- Dosyaları düzenle →
git add
→ git commit
→ git push
Temel Terimler
- Repository (Depo): Proje dosyalarının ve değişiklik geçmişinin saklandığı yerdir.
- Commit: Yapılan değişiklikleri kaydeden bir adımdır.
- Branch (Dal): Ana projeyi bozmadan, farklı geliştirmeler yapmak için kullanılan kopya bir yoldur.
- Merge (Birleştirme): Farklı branch’leri birleştirme işlemidir.
- Clone: Uzaktaki bir projeyi kendi bilgisayarınıza kopyalamak.
- Pull: Uzaktaki depodaki değişiklikleri kendi bilgisayarınıza indirme işlemi.
- Push: Yerel değişiklikleri uzak depoya gönderme işlemi.
Sonuç
Bu bölümde Git’in ne olduğunu, neden önemli olduğunu ve nasıl çalıştığını öğrendiniz. Bir sonraki bölümde, Git’i bilgisayarınıza kurup kullanmaya başlayacağız!