Git Pie: A Arte Ancestral do Versionamento 🥧 Help

Gerenciando Repositórios Grandes

Estratégias

Abordagens

EstratégiasGit LFSSubmodulesPartial CloneArquivos grandesBináriosCódigo externoDependênciasHistórico parcialBlobs sob demanda

Configurações

# Configurar LFS git lfs install git lfs track "*.psd" # Clone parcial git clone --filter=blob:none URL # Sparse checkout git sparse-checkout set dir1 dir2

Otimização

Técnicas

+------------------------+ | OTIMIZAÇÕES | | | | • Git LFS | | • Partial clone | | • Shallow clone | | • Sparse checkout | | • Bfg-repo-cleaner | +------------------------+

Limpeza

# Remover arquivos grandes git filter-branch --tree-filter \ 'rm -rf path/to/large/file' HEAD # Limpar histórico git gc --aggressive --prune=now

Monitoramento

Métricas Importantes

Tamanho

Performance

Análise

Medição

Repo

.git

Operações

Objetos

Tempo

Ferramentas

# Análise de tamanho git count-objects -vH # Objetos grandes git verify-pack -v .git/objects/pack/*.idx | \ sort -k 3 -n | tail -10 # Status LFS git lfs status

Boas Práticas

Recomendações

  1. Use Git LFS para binários

  2. Implemente partial clone

  3. Mantenha histórico limpo

  4. Monitore crescimento

  5. Documente políticas

Manutenção Regular

# Limpeza periódica git maintenance start # Verificação git fsck --full # Compactação git repack -ad

Próximos Passos

Tópicos Relacionados

22 abril 2025