Git Linus'un yaratıcısının git deponuzu nasıl küçülteceğinizle ilgili söyledikleri:
"Git gc --agresif" nin eşdeğeri - ancak * doğru bir şekilde * yapılır - şöyle bir şey yapmaktır (bir gecede)
git repack -a -d --depth=250 --window=250
burada bu derinlik meselesi, delta zincirlerinin ne kadar derin olabileceğiyle ilgilidir (eski tarih için onları daha uzun hale getirin - uzay ek yüküne değer) ve pencere meselesi, her delta adayının taramasını istediğimiz nesne penceresinin ne kadar büyük olduğuyla ilgilidir.
Ve buraya "-f" bayrağını eklemek isteyebilirsiniz (ki bu "tüm eski deltaları bırak" dır, çünkü şimdi bunun gerçekten iyi adaylar bulduğundan emin olmaya çalışıyorsunuz.
kaynak: http://gcc.gnu.org/ml/gcc/2007-12/msg00165.html
Bu, depomda öksüz kalan ikili verilerden kurtulacak mı? "git repack", deponuza koyduğunuz ve daha sonra sildiğiniz resimleri veya ikili verileri ortadan kaldırmaz. Bu tür verileri deponuzdan kalıcı olarak silmek için geçmişinizi yeniden yazmanız gerekir. Bunun yaygın bir örneği, git'te şifrelerinizi yanlışlıkla kontrol etmenizdir. Geri dönüp bazı dosyaları silebilirsiniz, ancak daha sonra geçmişinizi o zamandan bugüne yeniden yazmanız ve ardından yeni depoyu kaynağınıza zorla itmeniz gerekir.
git count-objects -v?