CodeBlanks Logo Icon CodeBlanks

edit drop

edit ve drop komutlarını öğrenirsin.

edit ve drop

İnteraktif rebase sırasında edit, bir commit yeniden uygulandıktan sonra işlemi durdurur. Böylece dosyaları değiştirebilir veya commit'i yeniden düzenleyebilirsin. drop ise seçilen commit'i geçmişten çıkarır.

pick a12bc34 Add reports page
edit b23cd45 Add report filters
drop c34de56 Add temporary debug output

Bu işlemler geçmişi değiştirdiğinden, özellikle paylaşılan dallarda dikkatli kullanılmalıdır.

Bir commit'i bölme

Bir commit birden fazla bağımsız değişiklik içeriyorsa edit ile durdurup daha küçük commit'lere ayırabilirsin. Rebase durduğunda git reset HEAD^ komutu son commit'i geri alır ancak değişiklikleri çalışma alanında bırakır. Ardından dosyaları ayrı ayrı sahneleyip yeni commit'ler oluşturabilir ve git rebase --continue ile devam edebilirsin.

git reset HEAD^
git add page.html
git commit -m "Add page markup"
git add page.css
git commit -m "Add page styles"
git rebase --continue

Uygulama Bir commit'i iki parçaya ayır

Rebase işleminin edit nedeniyle durduğunu varsay. Son commit'i geri al, report.html dosyasını ayrı bir commit olarak kaydet, ardından report.css dosyasını ikinci commit olarak kaydet. Son olarak rebase işlemine devam et.

Başlangıç kodu

terminal
# Son commit'i geri al

# HTML dosyasını ayrı kaydet

# CSS dosyasını ayrı kaydet

# Rebase işlemine devam et

Örnek çözüm

terminal
git reset HEAD^
git add report.html
git commit -m "Add report markup"
git add report.css
git commit -m "Add report styles"
git rebase --continue

Beklenen çıktı

Last commit reset; changes kept.
HTML changes committed.
CSS changes committed.
Rebase continued.

Soru ve cevaplar

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

1 Bir commit'i yeniden uyguladıktan sonra durup dosyalarını değiştirmek veya commit'ini düzeltmek istiyorsun. Hangi todo komutu uygundur?

  • squash
  • edit Doğru cevap
  • pick
  • drop

Açıklama: edit, commit yeniden uygulandıktan sonra rebase işlemini durdurur ve düzenleme yapmana olanak tanır.

2 Rebase işlemini sürdür

Soru
git rebase ____
Cevap
git rebase --continue

Açıklama: Düzenleme tamamlandığında devam eden rebase işlemini sürdürmek için --continue seçeneği kullanılır.

3 Commit düzenleme seçenekleri

Kavram Anlamı
edit Commit üzerinde değişiklik yapma
drop Commit'i geçmişten çıkarma
git reset HEAD^ Commit'i geri alıp değişikliği koruma
git rebase --continue Rebase işlemine devam etme

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