«git-rewrite-history» etiketlenmiş sorular

Bir Git deposunun geçmişini yeniden yazmak, örneğin eski kayıtları düzenlemek, istenmeyen verileri kaldırmak (ör. Özel veriler veya büyük dosyalar), dosya yapısını yeniden düzenlemek, işleme meta verilerini düzeltmek vb.


30
Git'teki birden çok taahhüdün yazarını ve değiştiren adını ve e-postasını nasıl değiştirebilirim?
Yakın çekim Stack Overflow ya da yeni fotoğraf eklentileri : Daha fazla bilgi Okul bilgisayarında basit bir senaryo yazıyordum ve Git'teki değişiklikleri (pendrive'ımdaki bir repoda, evdeki bilgisayarımdan klonlanmış) yapıyordum. Birkaç işlemden sonra kök kullanıcı olarak bir şeyler yaptığımı fark ettim. Bu taahhütlerin yazarını benim adımla değiştirmenin bir yolu var mı?

16
Belirtilen bir taahhüt nasıl değiştirilir?
Genelde gözden geçirilmek üzere bir taahhüt listesi gönderirim. Aşağıdaki taahhütlerim varsa: HEAD Commit3 Commit2 Commit1 ... kafa taahhüdünü değiştirebileceğimi biliyorum git commit --amend. Ancak taahhüt Commit1olmadığı göz önüne alındığında nasıl değişiklik yapabilirim HEAD?


18
Git deposundaki büyük bir dosyayı kayıt geçmişinden nasıl kaldırırım / silebilirim?
Bazen bir DVD ripini bir web sitesi projesine bıraktım, sonra dikkatsizce git commit -a -m ...ve zap, repo 2.2 konser tarafından şişirildi. Bir dahaki sefere bazı düzenlemeler yaptım, video dosyasını sildim ve her şeyi yaptım, ancak sıkıştırılmış dosya hala depoda, tarihte orada. Bu taahhütlerden şubelere başlayabileceğimi ve bir şubeyi diğerine …


12
Kötü bir birleştirmeyi nasıl düzeltirsiniz ve iyi taahhütlerinizi sabit bir birleştirmeye nasıl tekrar koyarsınız?
filename.origŞimdiye kadar fark etmeden, yanlışlıkla birkaç komisyon önce depoma istenmeyen bir dosyayı ( birleştirme çözümlerken) taahhüt ettim. Dosyayı depo geçmişinden tamamen silmek istiyorum. Değişiklik geçmişini filename.origen başta depoya asla eklenmeyecek şekilde yeniden yazmak mümkün müdür ?

11
Hassas dosyaları ve bunların taahhütlerini Git geçmişinden kaldırın
GitHub'a bir Git projesi koymak istiyorum ama hassas verilerle (capistrano için /config/deploy.rb gibi kullanıcı adları ve şifreler) belirli dosyalar içeriyor. Bu dosya adlarını .gitignore'a ekleyebileceğimi biliyorum , ancak bu Git'teki geçmişlerini kaldırmaz. Ayrıca /.git dizinini silerek yeniden başlamak istemiyorum. Git geçmişinizdeki belirli bir dosyanın tüm izlerini kaldırmanın bir yolu var …





6
Git'i değiştirmek için Git'te birkaç taahhüt nasıl değiştirilir?
Git'te bir dizi taahhütte bulundum ve şimdi kullanıcı adımı ve kullanıcı e-posta özelliklerimi (yeni makine) ayarlamayı unuttuğumu anlıyorum. Bu taahhütleri henüz havuzuma itmedim, bu yüzden bunu yapmadan önce bu taahhütleri nasıl düzeltebilirim (ana dalda sadece son 3 taahhüt)? Ben bakarak edilmiştir git resetve git commit -C <id> --reset-author, ama ben …

4
Dosya Git deposundan temizlenemedi, yeni yedekleme oluşturulamadı
Uzak depomdan bir dosyayı çalıştırarak kaldırmaya çalıştım: git filter-branch --index-filter 'git rm --cached --ignore-unmatch Rakefile' HEAD Ama Git bundan şikayet ediyor Yeni yedek oluşturulamaz. -F rm ile yedeklemenin üzerine yazmayı zorla refs / original / Force içinde önceki bir yedekleme zaten mevcut : /.git-rewrite/backup-refs kaldırılamıyor: İzin reddedildi rm: dizin kaldırılamıyor …
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.