-
1. Başlangıç
- 1.1 Sürüm Denetimi
- 1.2 Git’in Kısa Tarihçesi
- 1.3 Git Nedir?
- 1.4 Komut Satırı
- 1.5 Git’i Yüklemek
- 1.6 Git’i İlk Defa Kurmak
- 1.7 Yardım Almak
- 1.8 Özet
-
2. Git Temelleri
-
3. Git Dalları
- 3.1 Dallar
- 3.2 Kısaca Dallandırma ve Birleştirme Temelleri
- 3.3 Dal Yönetimi
- 3.4 İş Akışı Dallandırması
- 3.5 Uzak Dallar
- 3.6 Yeniden Temelleme (rebase)
- 3.7 Özet
-
4. Bir Sunucuda Git Kurma
- 4.1 İletişim Kuralları (Protocols)
- 4.2 Bir Sunucuda Git Kurma
- 4.3 SSH Ortak Anahtarınızı Oluşturma
- 4.4 Sunucu Kurma
- 4.5 Git Cini (Daemon)
- 4.6 Akıllı HTTP
- 4.7 GitWeb
- 4.8 GitLab
- 4.9 Üçüncü Taraf Barındırma (Hosting) Seçenekleri
- 4.10 Özet
-
5. Dağıtık Git
- 5.1 Dağıtık İş Akışları
- 5.2 Projenin Gelişiminde Rol Almak
- 5.3 Bir Projeyi Yürütme
- 5.4 Özet
-
6. GitHub
- 6.1 Bir Projeye Katkıda Bulunmak
- 6.2 Proje Bakımı
- 6.3 Kurumsal Yönetim
- 6.4 GitHub’ı otomatikleştirme
- 6.5 Özet
-
7. Git Araçları
- 7.1 Düzeltme Seçimi
- 7.2 Etkileşimli İzlemleme (Staging)
- 7.3 Saklama ve Silme
- 7.4 Çalışmanızı İmzalama
- 7.5 Arama
- 7.6 Geçmişi Yeniden Yazma
- 7.7 Reset Komutunun Gizemleri
- 7.8 İleri Seviye Birleştirme
- 7.9 Rerere
- 7.10 Git’le Hata Ayıklama
- 7.11 Alt Modüller
- 7.12 Demetleme (Bundling)
- 7.13 Git Nesnesini Değiştirme
- 7.14 Kimlik Bilgisi Depolama
- 7.15 Özet
-
8. Git’i Özelleştirmek
- 8.1 Git Yapılandırması
- 8.2 Git Nitelikleri
- 8.3 Git Kancaları (Hooks)
- 8.4 Bir Örnek: Mecburi Git Politikası
- 8.5 Özet
-
9. Git ve Diğer Sistemler
- 9.1 İstemci Olarak Git
- 9.2 Git’e Geçiş
- 9.3 Özet
-
10. Dahili Git Ögeleri
- 10.1 Tesisat ve Döşeme (Plumbing ve Porcelain)
- 10.2 Git Nesneleri
- 10.3 Git Referansları
- 10.4 Packfiles
- 10.5 Refspec
- 10.6 Transfer Protokolleri
- 10.7 Bakım ve Veri Kurtarma
- 10.8 Ortam Değişkenleri
- 10.9 Özet
-
A1. Ek bölüm A: Diğer Ortamlarda Git
- A1.1 Görsel Arayüzler
- A1.2 Visual Studio ile Git
- A1.3 Visual Studio Code ile Git
- A1.4 Eclipse ile Git
- A1.5 Sublime Text ile Git
- A1.6 Bash ile Git
- A1.7 Zsh ile Git
- A1.8 PowerShell ile Git
- A1.9 Özet
-
A2. Ek bölüm B: Git’i Uygulamalarınıza Gömmek
- A2.1 Git Komut Satırı
- A2.2 Libgit2
- A2.3 JGit
- A2.4 go-git
- A2.5 Dulwich
-
A3. Ek bölüm C: Git Komutları
- A3.1 Kurulum ve Yapılandırma Komutları
- A3.2 Proje Oluşturma Komutları
- A3.3 Kısaca Poz (Snapshot) Alma
- A3.4 Dallandırma ve Birleştirme Komutları
- A3.5 Projeleri Paylaşma ve Güncelleme Komutları
- A3.6 İnceleme ve Karşılaştırma Komutları
- A3.7 Hata Ayıklama (Debugging) Komutları
- A3.8 Yamalama (Patching)
- A3.9 E-Posta Komutları
- A3.10 Harici Sistemler
- A3.11 Yönetim
- A3.12 Tesisat (Plumbing) Komutları
3.3 Git Dalları - Dal Yönetimi
Dal Yönetimi
Şu ana kadar birkaç dal oluşturduk, birleştirdik ve sildik. Şimdi de sürekli olarak dalları kullanmaya başladığınızda işinize yarayacak bazı dal yönetimi araçlarına bakalım.
git branch
komutu, sadece dallar oluşturmak ve silmekle kalmaz.
Eğer hiç argüman vermeden çalıştırırsanız, mevcut dallarınızın basit bir listesini de elde edersiniz:
$ git branch
iss53
* master
testing
master
dalının önünde yer alan *
karakterine dikkat edin: bu, şu anda üzerinde çalıştığını (yani, HEAD
'in işaret ettiği) dalı gösterir.
Bu, eğer şimdi bir katkı işlerseniz master
dalının yeni çalışmanızla birlikte ileri taşınacağı anlamına gelir.
Her bir dalın son katkısını görmek için git branch -v
komutunu çalıştırabilirsiniz:
$ git branch -v
iss53 93b412c fix javascript issue
* master 7a98805 Merge branch 'iss53'
testing 782fd34 add scott to the author list in the readmes
Kullanışlı --merged
ve --no-merged
seçenekleri bu listeyi, şu anda üzerinde bulunduğunuz dala zaten birleştirdiğiniz veya henüz birleştirmediğiniz dallara filtreleyebilir.
Şu anda üzerinde bulunduğunuz dal içine zaten birleştirilmiş olan dalları görmek için git branch --merged
komutunu çalıştırabilirsiniz:
$ git branch --merged
iss53
* master
Daha önce iss53
dalını zaten birleştirdiğiniz için, bu dalı listenizde görüyorsunuz.
Bu listede yer alıp önünde *
olmayan dalları git branch -d
ile silmek genellikle güvenlidir.
Çünkü zaten bu dallardaki çalışmayı başka bir dala dahil ettiniz ve onları silmek veri kaybına yol açmayacak.
Henüz birleştirmediğiniz bir çalışmayı içeren tüm dalları görmek için git branch --no-merged
komutunu çalıştırabilirsiniz:
$ git branch --no-merged
testing
Bu son komut başka bir dalınızı gösteriyor.
Henüz birleştirilmemiş bir çalışmayı içerdiği için git branch -d
ile silmeye çalışmak başarısız olacaktır:
$ git branch -d testing
error: The branch 'testing' is not fully merged.
If you are sure you want to delete it, run 'git branch -D testing'.
Eğer gerçekten de dalı silmek ve bu çalışmayı kaybetmek istiyorsanız, yardımcı mesajda belirtildiği gibi Git’i -D
bayrağıyla dalı silmeye zorlayabilirsiniz.
İpucu
|
Eğer bir katkı veya dal adı verilmezse, yukarıda açıklanan seçenekler, sırasıyla şu anki dala ( Dilediğiniz zaman, sadece ek bir argüman girerek, başka bir dala geçiş yapmaksızın o dalın birleştirme durumu hakkında sorgu yazabilirsiniz. Örneğin
|