git repack
Empaqueter les objets libres dans des packfiles
La commande 'git repack' combine les objets libres (un fichier par objet) en packfiles — des fichiers compressés qui stockent les versions proches sous forme de petits deltas. Les dépôts empaquetés sont bien plus petits et rapides. git gc l’appelle pour vous ; la lancer directement sert aux réglages fins.
Synopsis
git repack [-a] [-d] [-f] [--depth=<n>] [--window=<n>]Exemples
Tout empaqueter, retirer les anciens packs
git repack -a -dUn seul packfile bien rangé.
Exemples de workflows
git count-objects -vNombre et taille des objets libres
git repack -a -dEmballer
git count-objects -vLes objets libres ont disparu
Dépannage
Le réempaquetage prend très longtemps
Cause : --aggressive ou une grande --window sur un gros dépôt
Utilisez les réglages par défaut via git gc
Astuces et pièges
Bonnes pratiques
- ✓Préférez git gc, sauf si vous savez pourquoi il vous faut des options de repack.
FAQ
Oui, il ne supprime jamais d’objets accessibles.