Junior
Sürüm kontrol sisteminde son commit nasıl iptal edilir?
sobes.tech yapay zeka
AI'dan gelen yanıt
Git kullanırken birkaç yöntem vardır:
1. Son commit'i iptal et, değişiklikleri koruyarak:
git reset --soft HEAD~1
# Son commit'i iptal eder, indekslenmiş değişiklikler kalır
# Çalışma dizini değiştirilmez
2. Son commit'i iptal et, indekslenmiş değişiklikleri iptal et, ama çalışma değişikliklerini koru:
git reset --mixed HEAD~1
# Son commit'i iptal eder ve değişikliklerin indekslemesini kaldırır
# Çalışma dizini değiştirilmez
3. Son commit'i tamamen iptal et, değişiklikler dahil:
git reset --hard HEAD~1
# Son commit'i tamamen iptal eder
# İndekslenmiş değişiklikler ve çalışma dizini, son commit öncesi duruma döner
# Çalışma dizinindeki kaydedilmemiş tüm değişiklikler kaybolur
4. Son değişiklikleri iptal eden yeni bir commit oluştur:
git revert HEAD
# Son commit'teki değişiklikleri iptal eden yeni bir commit oluşturur
# Geçmiş korunur, bu, halka açık dallarda çalışırken güvenli bir yoldur
Seçim, istenen sonuca ve dalın yayınlanıp yayınlanmadığına bağlıdır. --hard dikkatli kullanılmalıdır, çünkü veri kaybına yol açabilir. git revert, diğer geliştiriciler tarafından kullanılan dallarla çalışırken tercih edilir.