Tüm Git Geçmişini Temizleme
yazıldı
·
1 dakika okuma
Git'teki commit geçmişini temizlemek genellikle mantıklı bir hareket olmamakla beraber bazı durumlarda gerekli olabiliyor. Aşağıdaki komutlar geri dönüşü olmayan kalıcı sonuçlar yaratacak ve işlenecek commit, reponuzun ilk commiti olacak; bunun bilincinde hareket edin.
Yetim Bir Dal Oluşturun - Yeni bir dal oluşturacağız ve bu dal
git branch komutunda görünmeyecek.
git checkout --orphan yeni_dal
git checkout --orphan yeni_dal
Tüm Dosyaları Yeni Dala Ekleyin - Mevcut dosyaların hepsini yeni oluşturduğumuz dala ekleyeceğiz.
git add -A
git add -A
Yapılan Değişiklikler İçin Bir Commit Oluşturun - Tüm dosyaları yeni dala ekledikten sonra değişiklikleri işleyeceğiz.
git commit -am "Yeni commit mesajı"
git commit -am "Yeni commit mesajı"
Eski (Master) Dalı Silin - Artık mevcut dalımızı temizleyebiliriz. Burada mevcut dalımızın master olduğunu varsaydım. Sizinkisi master, main veya tamamen başka bir dal olabilir. Kendi dalınızı bildiğinizi düşünüyorum.
git branch -D master
git branch -D master
Mevcut Dalınızın Adını Değiştirin - yeni_dal adı ile oluşturduğumuz dalın adını sildiğimiz master dalının yerini alması için master adıyla değiştireceğiz.
git branch -m master
git branch -m master
Değişikleri Pushlayın - Tüm bu değişiklikleri yerel reponuzda yapmıştık. Şimdi bu değişikleri uzak repoya (zorla) gönderme zamanı geldi.
git push -f origin master
git push -f origin master
Artık reponuzda en son işlediğimiz "Yeni commit mesajı" dışında bir commit olmayacak.