Git çöp toplama işlemini otomatik olarak çalıştırır :
• Havuzda çok fazla gevşek nesne varsa
• Uzak bir depoya aktarma gerçekleştiğinde
• Birçok gevşek nesne tanıtabilecek bazı komutlardan sonra
• git reflog gibi bazı komutların süresi sona erdiğinde açıkça isteyin
Son olarak, git gc komutunu kullanarak açıkça istediğinizde çöp toplama işlemi gerçekleşir. Ama bu ne zaman olmalı? Bu sorunun kesin bir cevabı yok, ama iyi bir tavsiye ve en iyi uygulama var.
Git gc'yi birkaç durumda manuel olarak çalıştırmayı düşünmelisiniz:
• Git filtre dalını yeni tamamladıysanız. Filtre dalının birçok taahhüdü yeniden yazdığını, yenilerini tanıttığını ve eskilerinden sonuçlardan memnun kaldığınızda kaldırılması gereken bir ref bıraktığını hatırlayın. Tüm bu ölü nesneler (bunlara işaret eden tek referansı kaldırdığınız için artık referans verilmemektedir) çöp toplama yoluyla kaldırılmalıdır.
• Birçok komuttan sonra gevşek nesneler ekleyebilecek. Örneğin, bu büyük bir geri ödeme çabası olabilir.
Ve kapak tarafında, ne zaman çöp toplama konusunda dikkatli olmalısınız?
• Kurtarmak isteyebileceğiniz yetimsiz referanslar varsa
• Git rerere bağlamında ve çözünürlükleri sonsuza kadar kaydetmenize gerek yok
• Yalnızca etiketlerin ve dalların Git'in bir taahhüdü kalıcı olarak korumasına neden olması bağlamında
• FETCH_HEAD alımları bağlamında (git getirme yoluyla URL doğrudan alımlar) hemen çöp toplama işlemine tabi oldukları için