Aqui está o que o criador do git Linus tem a dizer sobre como reduzir seu repositório git:
O equivalente a "git gc --aggressive" - mas feito * corretamente * - é fazer (durante a noite) algo como
git repack -a -d --depth=250 --window=250
onde essa profundidade é a profundidade das cadeias delta (aumentá-las para a história antiga - vale a pena a sobrecarga do espaço), e a questão da janela é o tamanho de uma janela de objeto que queremos que cada candidato a delta escaneie.
E aqui, você pode querer adicionar o sinalizador "-f" (que é o "excluir todos os deltas antigos", pois agora você está realmente tentando garantir que este realmente encontre bons candidatos.
fonte: http://gcc.gnu.org/ml/gcc/2007-12/msg00165.html
Isso eliminará os dados binários que ficam órfãos no meu repositório? O "git repack" não se livra das imagens ou dos dados binários que você verificou no seu repositório e os excluiu. Para excluir esse tipo de dados permanentemente do seu repositório, você deve reescrever seu histórico. Um exemplo comum disso é quando você acidentalmente verifica suas senhas no git. Você pode voltar e excluir alguns arquivos, mas precisará reescrever seu histórico a partir de agora até agora e depois forçar o push e o novo repo à sua origem.
git count-objects -v
?