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>
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 testMimari 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.