«git-filter-branch» etiketlenmiş sorular

git filter-branch, dalları kapsamlı bir şekilde yeniden yazmak için kullanılan yerel bir Git aracıdır ve genellikle istenmeyen büyük veya gizli dosyaları Git veri havuzu geçmişinden kaldırmak için kullanılır.

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ı?

25
Alt dizini ayrı Git deposuna ayırma (taşıma)
Bir dizi alt dizin içeren bir Git deposu var. Şimdi alt dizinlerden birinin diğeri ile ilgisiz olduğunu ve ayrı bir depoya ayrılması gerektiğini buldum. Alt dizin içindeki dosyaların geçmişini tutarken bunu nasıl yapabilirim? Sanırım bir klon yapabilir ve her bir klonun istenmeyen kısımlarını kaldırabilirim, ama sanırım bu eski bir revizyonu …

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 …

11
Git geçmişinden eski geçmişi nasıl silebilirim?
Korkarım bu senaryo gibi bir şey bulamadım. Geçmişi çok olan bir git depom var: 500+ şube, 500+ etiket, 2007 ortasına kadar geri dönüyor. ~ 19.500 taahhüt içerir. Daha küçük ve daha kolay başa çıkabilmek için tüm geçmişi 1 Ocak 2010'dan kaldırmak istiyoruz (geçmişin tam bir kopyasını bir arşiv havuzunda saklayacağız). …

10
Birçok alt dizini yeni, ayrı bir Git deposuna ayırın
Bu soru alt dizini ayrı Git deposuna ayır Tek bir alt dizini ayırmak yerine, bir çift ayırmak istiyorum. Örneğin, geçerli dizin ağacım şöyle görünür: /apps /AAA /BBB /CCC /libs /XXX /YYY /ZZZ Bunun yerine bunu istiyorum: /apps /AAA /libs /XXX Çalışmayacak --subdirectory-filterargümanı git filter-branch, ilk çalıştırıldığında verilen dizin hariç her …


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 …

8
git rm - fatal: pathspec hiçbir dosyayla eşleşmedi
Proje klasörüme kazara 9000'den fazla fotoğraf ekledim. Ve onları adadı. Daha sonra bunları diskten sildi. Taahhütlü. Şimdi değişiklikleri git sunucusuna göndermeye çalışıyorum. Ancak çok uzun sürüyor ve 12 Gb veri göndermeye çalışıyor. Diskteki dosya boyutunu kontrol ettim ve gerçekten .gitklasörün 12 Gb aldığını gördüm . Oradan fotoğraflar nasıl silinir ? …

5
Büyük Git deposunu birçok küçük depoya bölün
Bir SVN deposunu Git'e başarıyla dönüştürdükten sonra, artık birden çok küçük depoya bölmek ve geçmişi korumak istediğim çok büyük bir Git deposuna sahibim. Öyleyse, birisi şuna benzeyen bir depoyu kırmaya yardımcı olabilir mi: MyHugeRepo/ .git/ DIR_A/ DIR_B/ DIR_1/ DIR_2/ Aşağıdaki gibi görünen iki depoya: MyABRepo/ .git DIR_A/ DIR_B/ My12Repo/ .git …
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.