Menu
Coddy logo textTech

Bir Branch'i Sıfırla

Coddy'nin Terminal Journey'sinin Versiyon Kontrolü bölümünün bir parçası — ders 44 / 58.

git reset mevcut dal işaretçisini farklı bir commit'e taşır. En yaygın kullanımı, henüz paylaşmadığınız son commit'leri geri almaktır.

git reset --hard HEAD~1

Bu işlem main dalını bir commit geriye taşır ve çalışma dizinini buna uyacak şekilde üzerine yazar. Atladığınız commit'e artık dalınızdan ulaşılamaz (Git, fikrinizi değiştirme ihtimalinize karşı onu bir süre saklar, ancak silinmesini bekleyin).

Üç farklı sıfırlama türü mevcuttur:

  • --soft: dal işaretçisini taşı; hazırlanan (staged) değişiklikleri koru
  • --mixed (varsayılan): işaretçiyi taşı; hazırlanan alanından çıkar (unstage) ancak çalışma dosyalarını koru
  • --hard: işaretçiyi taşı; çalışma dosyası değişikliklerini de at

--hard en yıkıcı formdur. Yerel hataları temizlemek için harikadır, ancak başkalarının çoktan çektiği commit'lerde asla kullanmayın.

challenge icon

Görev

Orta

Klasör doc.md dosyasını içeriyor. Depoyu başlatın ve sırasıyla üç commit oluşturun:

  1. doc.md dosyasını Add doc mesajıyla ekleyin.
  2. doc.md dosyasına second ifadesini ekleyin, Second draft mesajıyla commit yapın.
  3. doc.md dosyasına third ifadesini ekleyin, Third draft mesajıyla commit yapın.

HEAD~2 kullanarak dalı en baştaki ilk commit'e hard-reset yapın. doc.md dosyasının içeriğini yazdırın.

Kopya kağıdı

git reset mevcut dal işaretçisini farklı bir commit'e taşır. Üç türü vardır:

  • --soft: işaretçiyi taşı; sahnelenen (staged) değişiklikleri koru
  • --mixed (varsayılan): işaretçiyi taşı; değişiklikleri sahneden çıkar ancak çalışma dosyalarını koru
  • --hard: işaretçiyi taşı; çalışma dosyası değişikliklerini at
git reset --hard HEAD~1  # son commit'i geri al, değişiklikleri at
git reset --hard HEAD~2  # son 2 commit'i geri al

Uyarı: Başkalarının çoktan çektiği (pull) commit'lerde asla --hard kullanmayın.

Kendin dene

Terminal
quiz iconKendini test et

Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.

Versiyon Kontrolü bölümündeki tüm dersler