CodeBlanks Logo Icon CodeBlanks

rebase -i

git rebase -i ile interaktif rebase'i öğrenirsin.

İnteraktif rebase'e giriş

İnteraktif rebase, commit geçmişindeki kayıtları yeniden düzenlemeni sağlar. git rebase -i komutu bir düzenleyicide todo listesi açar; bu listede commit'lerin nasıl işleneceğini belirlersin. Örneğin son dört commit'i incelemek için HEAD~4 kullanabilirsin.

git rebase -i HEAD~4

Düzenleyicideki satırların sırası, commit'lerin yeniden uygulanma sırasını belirler. İşlemi tamamlamak için listeyi kaydedip düzenleyiciden çıkarsın.

Todo listesini okuma

İnteraktif rebase düzenleyicisinde her satır bir işlem ve bir commit bilgisi içerir. Satırın başındaki komut, ilgili commit'e ne yapılacağını belirtir. Örneğin pick commit'i olduğu gibi yeniden uygular; diğer komutlar commit mesajını veya commit yapısını değiştirebilir.

pick a12bc34 Add search form
pick b23cd45 Fix search validation
pick c34de56 Update search styles

Satırları düzenleyerek commit sırasını ve uygulanacak işlemleri değiştirebilirsin.

Uygulama İnteraktif rebase komutunu hazırla

Son beş commit'i düzenleyicide incelemek için gerekli Git komutunu yaz. İnteraktif modu etkinleştir ve doğru commit aralığını seç.

Başlangıç kodu

terminal
# Son beş commit için interaktif rebase başlat

Beklenen çıktı

Interactive rebase started for the selected commit range.

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 İnteraktif rebase başlatıldığında açılan todo listesinin temel amacı nedir?

  • Yeni bir uzak depo oluşturmak
  • Uzak depodaki dosyaları indirmek
  • Commit kayıtlarının nasıl işleneceğini belirlemek Doğru cevap
  • Çalışma dizinindeki tüm dosyaları silmek

Açıklama: Todo listesi, seçilen commit'ler için uygulanacak işlemleri ve bunların sırasını belirler.

2 Son üç commit için interaktif rebase başlat

Soru
git rebase ____
Cevap
git rebase -i HEAD~3

Açıklama: İnteraktif mod için -i seçeneği kullanılır. HEAD~3, son üç commit'i kapsayan aralığı belirtir.

3 İnteraktif rebase arayüzü

Kavram Anlamı
Todo listesi İşlem satırlarını içerir
Düzenleyici Listeyi değiştirmeyi sağlar
Commit kimliği İlgili kaydı tanımlar
Satır sırası Yeniden uygulama sırasını belirler

İleri seviye bölümündeki tüm dersler