git reflog
- Git kursu
- Orta seviye
- Ders 45/82
- 4 dk
git reflog ile HEAD hareketlerini görmeyi öğrenirsin.
git reflog nedir?
git reflog, yerel depoda HEAD'in yaptığı hareketlerin kaydını gösterir. Commit oluşturma, dal değiştirme, reset ve checkout gibi işlemler HEAD konumunu değiştirdiğinde bu geçmişe yeni kayıtlar eklenir. Normal commit geçmişinde görünmeyen bazı commit'leri reflog sayesinde bulabilirsin.
git reflog
# Örnek çıktı:
a1b2c3d HEAD@{0}: commit: Yeni özellik
e4f5g6h HEAD@{1}: checkout: moving from main to featureReflog yalnızca yerel depoda tutulur ve uzak depoya otomatik olarak gönderilmez.
Reflog kayıtlarını okumak
Her reflog kaydında bir referans, commit kimliği ve işlemin açıklaması bulunur. HEAD@{0} en son hareketi, HEAD@{1} ise ondan önceki hareketi temsil eder. Bu gösterim, geçmişteki bir konuma ulaşmak için kullanılabilir.
git reflog
git show HEAD@{1}Reflog kayıtları yerel ve sınırlı ömürlüdür; bu nedenle önemli bir commit'i bulduğunda kurtarma işlemini geciktirmemelisin.
Uygulama Reflog geçmişini incele
Terminalde reflog çıktısını almak için git reflog komutunu çalıştıran bir kabuk komutu yaz. Ardından önceki HEAD konumunu göstermek için git show HEAD@{1} komutunu ekle.
Başlangıç kodu
# HEAD hareketlerini listele
# Önceki HEAD konumunu gösterÖrnek çözüm
# HEAD hareketlerini listele
git reflog
# Önceki HEAD konumunu göster
git show HEAD@{1}Beklenen çıktı
a1b2c3d Yeni özellik
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Reflog hangi bilgiyi gösterir?
- Uzak depodaki tüm kullanıcıları
- Dosyaların anlık boyutlarını
- Git yapılandırma ayarlarını
- HEAD'in yerel hareket geçmişini Doğru cevap
Açıklama: <code>git reflog</code>, HEAD'in yerel depoda hangi konumlara geçtiğini ve bu hareketlerin nedenlerini listeler.
2 Önceki HEAD konumunu göster
git show ____
git show HEAD@{1}
Açıklama: <code>HEAD@{1}</code>, HEAD'in bir önceki reflog hareketindeki commit'i gösterir.
3 Reflog terimleri
| Kavram | Anlamı |
|---|---|
git reflog |
HEAD hareketlerini listeler |
HEAD@{0} |
En son HEAD konumu |
HEAD@{1} |
Önceki HEAD konumu |
Yerel kayıt |
Depoda saklanan geçmiş |