Sinossi
git unpack-objects [-r] [-q] < <pack-file>
Descrizione
Il comando git unpack-objects legge un packfile da stdin e ne scrive i contenuti come oggetti loose individuali nel database degli oggetti. Questo è l'inverso di git pack-objects.
Nell'uso quotidiano, git unpack-objects si integra con alias e CI.
Capire il modello dati di Git aiuta a prevedere i risultati.
Quando usarlo
La maggior parte degli sviluppatori non ne ha mai bisogno. È usato per recuperare da un pack corrotto (spacchetta ciò che è recuperabile, poi ri-pack), per testing, o quando si integra un piccolo bundle in un repo dove il formato loose-object è preferibile.
Opzioni comuni
| Opzione | Descrizione |
|---|---|
-n | Dry-run: mostra cosa verrebbe spacchettato. |
-q | Quiet, nessun progresso. |
-r | Recupera ciò che è possibile da un pack danneggiato. |
--strict | Rifiuta di scrivere oggetti con link rotti. |
Esempi
git unpack-objects < pack-abc.pack
# Esplode il pack in oggetti loose
git unpack-objects -r < broken.pack
# Salva ciò che possiamo da un pack danneggiato
git unpack-objects -n < somepack.pack
# Solo anteprima di cosa verrebbe spacchettato
Errori comuni
Spacchettare un pack enorme crea molti file piccoli e rallenta il filesystem. Quasi ogni scenario operativo preferisce mantenere intatto il pack. Abbinalo con git fsck quando si risolvono problemi di corruzione.
Comandi correlati
git pack-objects, git verify-pack, git fsck, git gc