Özet - Bisect
- Git kursu
- İleri seviye
- Ders 8/56
- 5 dk
bisect akışını birleştirerek hatalı commit'i bulursun.
Özet: Bisect akışı
Bir hatanın hangi commit ile başladığını bulmak için önce git bisect start komutuyla aramayı başlatırsın. Hatalı sürümü bad, çalışan sürümü good olarak belirtirsin. Git, ikili aramayla aralığı daraltır ve her adımda yeni bir commit seçer.
git bisect start
git bisect bad HEAD
git bisect good v1.0.0İstersen her commit'i elle kontrol edebilir veya git bisect run ile testi otomatikleştirebilirsin.
Uygulama Hatalı commit'i otomatik bul
Bisect oturumunu başlat. Mevcut commit'i hatalı, v1.5.0 etiketini çalışan sürüm olarak bildir. Ardından ./check-bug.sh testini otomatik çalıştır ve arama tamamlandığında oturumu sıfırla.
Başlangıç kodu
# Bisect oturumunu başlat
# Mevcut commit hatalı
# v1.5.0 çalışan sürüm
# Testi otomatik çalıştır
# Oturumu bitirÖrnek çözüm
git bisect start
git bisect bad HEAD
git bisect good v1.5.0
git bisect run ./check-bug.sh
git bisect resetBeklenen çıktı
Bisect session started. Current commit marked bad. v1.5.0 marked good. Automated test completed. Bisect session reset.
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Bisect araması tamamlandığında Git, hatanın başladığı commit'i belirledi. Arama oturumunu sonlandırıp önceki dal durumuna dönmek için hangi komutu kullanırsın?
- git bisect good
- git bisect reset Doğru cevap
- git bisect run
- git bisect bad
Açıklama: git bisect reset, bisect oturumunu bitirir ve başlangıçtaki HEAD konumuna geri döner.
2 Otomatik arama ve test
git bisect ____
git bisect run ./check-bug.sh
Açıklama: Belirtilen betiği arama boyunca otomatik çalıştırmak için git bisect run kullanılır.
3 Bisect komutlarının görevleri
| Kavram | Anlamı |
|---|---|
git bisect start |
Arama oturumunu başlatır |
git bisect good |
Çalışan commit'i işaretler |
git bisect bad |
Hatalı commit'i işaretler |
git bisect run |
Testi otomatik yürütür |