git repack
Empaqueta objetos sueltos en packfiles
El comando 'git repack' combina objetos sueltos (un archivo por objeto) en packfiles — archivos comprimidos que guardan versiones parecidas como pequeños deltas. Los repositorios empaquetados son mucho más pequeños y rápidos. git gc lo llama por ti; ejecutarlo directamente sirve para ajustes finos.
Sinopsis
git repack [-a] [-d] [-f] [--depth=<n>] [--window=<n>]Ejemplos
Empaquetar todo y quitar los packs antiguos
git repack -a -dUn solo packfile ordenado.
Ejemplos de flujos de trabajo
git count-objects -vNúmero y tamaño de objetos sueltos
git repack -a -dEmpaquetar
git count-objects -vLos objetos sueltos desaparecieron
Solución de problemas
Reempaquetar tarda muchísimo
Causa: --aggressive o un --window grande en un repositorio grande
Usa los valores por defecto mediante git gc
Consejos y trampas
Buenas prácticas
- ✓Prefiere git gc salvo que sepas por qué necesitas opciones de repack.
Preguntas frecuentes
Sí, nunca elimina objetos alcanzables.