Git Bisect ile Hata Avı: Bugları Dakikalar İçinde Bulun Görseli

Git Bisect ile Hata Avı: Bugları Dakikalar İçinde Bulun

14.10.2026 | 7

Git Bisect: Hata Ayıklamada Yeni Nesil Yaklaşım

Büyük bir projede çalışırken, 'bu hata ne zaman oluşmaya başladı?' sorusu en çok vakit kaybettiren süreçlerden biridir. Manuel olarak commit'ler arasında dolaşmak yerine, Git'in sunduğu en güçlü araçlardan biri olan git bisect ile bu süreci binary search algoritmasıyla otomatiğe bağlayabilirsiniz.

Git Bisect Nasıl Çalışır?

Git bisect, projenin geçmişini ikiye bölerek hatalı commit'i bulur. Süreç şu adımlarla ilerler:

  • Start: Hata ayıklama modunu başlatın.
  • Bad: Mevcut commit'in hatalı olduğunu belirtin.
  • Good: Hatanın olmadığı, çalıştığından emin olduğunuz eski bir commit'i işaretleyin.
git bisect start
git bisect bad HEAD
git bisect good <commit-hash>
Git bisect binary search algoritması ile commit ağacı üzerinde hata arama süreci Görseli
Git bisect binary search algoritması ile commit ağacı üzerinde hata arama süreci

Otomasyon ile Hata Avı

Eğer bir test script'iniz varsa, bisect işlemini tamamen otomatize edebilirsiniz. Git, her adımda script'inizi çalıştırır ve otomatik olarak 'good' veya 'bad' kararı verir.

git bisect run npm test
Mimari Uyarı: Bisect kullanırken projenizin her aşamada build alınabilir (compilable) olması gerekir. Eğer bazı commit'lerde build hataları alıyorsanız, git bisect skip komutu ile o commit'i atlayabilirsiniz.

Neden Kullanmalısınız?

Manuel olarak 100 commit geriye gitmek yerine, bisect ile sadece 7 adımda (log2(100) ≈ 7) hatalı değişikliği bulabilirsiniz. Bu, özellikle CI/CD süreçlerinde hatalı deploy'ların kök nedenini (Root Cause Analysis) bulmak için kritik bir beceridir.

| |