git archive

Administration

Exporter les fichiers d’un commit dans une archive zip ou tar


La commande 'git archive' écrit les fichiers d’un commit, d’un tag ou d’une branche dans une archive zip ou tar — sans l’historique et sans le dossier .git. C’est la façon standard de publier une version en téléchargement. Le format suit l’extension du fichier de sortie, et --prefix place tous les fichiers dans un dossier.

Synopsis

git archive [--format=<fmt>] [--list] [--prefix=<prefix>/] [-o <file>] <tree-ish> [<path>...]
[ ] facultatif| ou<arg> valeur à remplacer... répétable--flag option

Options

Cliquez sur une option pour la déplier

Débutant (3)

Écrire l’archive dans ce fichier ; le format est déduit de son extension.

RecommandéÉcrire l’archive dans un fichier

Exemple

git archive -o shop.zip HEAD

Placer chaque fichier dans ce dossier à l’intérieur de l’archive (terminez par /).

RecommandéDécompresser dans un seul dossier bien rangé

Exemple

git archive --prefix=shop-1.0/ -o shop.tar.gz v1.0

Lister les formats disponibles.

Si nécessaireVoir les formats pris en charge

Exemple

git archive --list

Choisir la bonne option

archive ou bundle

Fichiers ou historique ?

CommandeContientÀ utiliser pour
git archiveLes fichiers d’un commitTéléchargements, déploiements
git bundleCommits et branchesDéplacer un dépôt hors ligne

Exemples

Zipper une version

git archive -o shop-1.0.zip v1.0

Les fichiers de v1.0 dans un zip.


Tar avec un dossier

git archive --prefix=shop/ -o shop.tar.gz HEAD

Tout dans shop/.


Un seul dossier

git archive -o docs.zip HEAD docs/

Seulement le dossier docs.

Exemples de workflows

1
git tag -a v1.0 -m "Release"

La taguer

2
git archive --prefix=shop-1.0/ -o shop-1.0.zip v1.0

L’exporter

Dépannage

Des fichiers manquent

Cause : Les fichiers non suivis ou ignorés ne sont jamais archivés

Committez-les, ou vérifiez les règles export-ignore de .gitattributes

Astuces et pièges

Bonnes pratiques

  • ✓Archivez des tags, pas des branches, pour que le téléchargement corresponde à la version.

Erreurs fréquentes

  • ✗S’attendre à trouver l’historique dans l’archive — utilisez git bundle pour déplacer l’historique.
  • ✗Oublier -o et remplir le terminal de données binaires.

FAQ

A:

Oui : marquez-les export-ignore dans .gitattributes.