Close

Archivio Git: come esportare un progetto Git

A volte può essere utile creare un file di archivio di un repository Git. Un file di archivio combina più file in un unico file. È quindi possibile estrarre un file di archivio per riprodurre i singoli file. Git è incredibilmente potente nel preservare la cronologia e la collaborazione in team; tuttavia, i file di archivio rimuovono il sovraccarico dei metadati di Git e possono essere più semplici da distribuire ad altri utenti o da conservare offline a lungo termine.


Che cosa fa un archivio git?


Il comando git archive è un'utilità della riga di comando Git che crea un file di archiviazione da riferimenti Git specificati come commit, branch o alberi. git archive accetta argomenti aggiuntivi che modificheranno l'output dell'archivio.

Esempi di esportazione in Git


Di seguito è riportato un esempio semplicissimo di ~git archive~

git archive --format=tar HEAD

Questo comando, una volta eseguito, creerà un archivio dall'attuale riferimento HEAD del repository. Per impostazione predefinita, git archive trasmetterà l'output dell'archivio nel flusso stdout effimero. Dovrai acquisire questo flusso di output in un file permanente. Puoi specificare un file permanente utilizzando l'opzione di output degli archivi git o utilizzando il reindirizzamento stdout del sistema operativo.

git archive --output=./example_repo_archive.tar --format=tar HEAD
Logo Git
materiale correlato

Scheda di riferimento rapido di Git

Logo di Bitbucket
Scopri la soluzione

Impara a utilizzare Git con Bitbucket Cloud

L'esempio seguente creerà un nuovo archivio e lo memorizzerà nel file exmaple_repo_archive.tar. Gli esempi precedenti hanno entrambi creato un output di archivio non compresso. Questo è indicato dall'opzione --format=tar. L'opzione di formato accetta anche i formati di file compressi più diffusi zip e tar.gz. L'utilizzo di una di queste opzioni di formato produrrà un archivio compresso. Se non viene passato un valore di formato, verrà dedotto da qualsiasi opzione --output passata.

git archive --output=./example_repo_archive.tar.gz --format=tar HEAD ./build

È possibile creare un archivio parziale del repository passando un argomento percorso. Questo esempio aggiunge un argomento percorso . /build al comando di archiviazione. Questo comando produrrà un archivio contenente solo i file archiviati nella directory ./build .

Opzioni


Gli esempi precedenti hanno dimostrato alcuni dei casi d'uso di git-archive più utilizzati. Le seguenti sono opzioni estese che possono essere passate a git-archive.

--prefix=<prefix>/

Le opzioni del prefisso precedono il percorso di ogni file in un archivio. Questo può essere utile per garantire che i contenuti dell'archivio vengano estratti in un namespace univoco.

--remote=<repo>

L'opzione remota prevede un URL di repository remoto. Quando viene richiamato con l'opzione remota, git-archive recupera il repository remoto e crea un archivio dal ref specificato, se disponibile sul remoto.

Configurazione


Ci sono alcuni valori di configurazione Git globali che ~git archive~ rispetterà. Questi valori possono essere impostati usando l'utilità git config.

tar.umask

L'opzione di configurazione della disabilitazione del mascheramento viene utilizzata per specificare la limitazione dei bit di autorizzazione a livello unix sul file di archivio di output.

tar.<format>.command

Questa opzione di configurazione consente di specificare un comando shell personalizzato tramite il quale verrà eseguito l'output di git-archive. È simile all'operazione di omettere l'opzione --output e reindirizzare il flusso stdout da ~git archive~ a uno strumento personalizzato. Ciò consente la post-elaborazione fissa degli archivi personalizzati.

tar.<format>.remote

Se abilitato, consente ai client remoti di recuperare archivi di tipo formato.

Riepilogo dell'archivio Git

L'archivio Git è un'utilità utile per creare pacchetti distribuibili di repository git. L'archivio Git può indirizzare riferimenti specifici di un repository e raggruppare solo il contenuto di quei riferimenti. L'archivio Git ha diversi formati di output che possono utilizzare una compressione aggiuntiva.


Condividi l'articolo

Letture consigliate

Aggiungi ai preferiti queste risorse per ricevere informazioni sui tipi di team DevOps e aggiornamenti continui su DevOps in Atlassian.

Le persone collaborano utilizzando una parete piena di strumenti

Blog di Bitbucket

Illustrazione su Devops

Percorso di apprendimento DevOps

Funzione Demo Den per demo con esperti Atlassian

Come Bitbucket Cloud funziona con Atlassian Open DevOps

Iscriviti alla nostra newsletter DevOps

Thank you for signing up