Setup and Config
Getting and Creating Projects
Basic Snapshotting
Branching and Merging
Sharing and Updating Projects
Inspection and Comparison
Patching
Debugging
External Systems
Server Admin
Guides
- gitattributes
- Command-line interface conventions
- Everyday Git
- Frequently Asked Questions (FAQ)
- Glossary
- Hooks
- gitignore
- gitmodules
- Revisions
- Submodules
- Tutorial
- Workflows
- All guides...
Administration
Plumbing Commands
- 2.46.1 → 2.47.0 no changes
- 2.46.0 07/29/24
- 2.43.1 → 2.45.2 no changes
- 2.43.0 11/20/23
- 2.40.1 → 2.42.3 no changes
- 2.40.0 03/12/23
- 2.38.1 → 2.39.5 no changes
- 2.38.0 10/02/22
- 2.37.1 → 2.37.7 no changes
- 2.37.0 06/27/22
- 2.34.1 → 2.36.6 no changes
- 2.34.0 11/15/21
- 2.29.1 → 2.33.8 no changes
- 2.29.0 10/19/20
- 2.1.4 → 2.28.1 no changes
- 2.0.5 12/17/14
SYNOPSIS
git archive [--format=<fmt>] [--list] [--prefix=<préfixe>/] [<extra>] [-o <fichier> | --output=<fichier>] [--worktree-attributes] [--remote=<dépôt> [--exec=<git-upload-archive>]] <arbre-esque> [<chemin>…]
DESCRIPTION
Crée une archive du format spécifié contenant l’arborescence de l’arbre nommé, et l’écrit sur la sortie standard. Si <préfixe> est spécifié, il préfixe le nom des fichiers dans l’archive.
git archive se comporte différemment lorsqu’on lui donne un ID d’arbre et lorsqu’on lui donne un ID de commit ou d’étiquette. Quand un ID d’arbre est fourni, l’heure actuelle est utilisée comme heure de modification de chaque fichier dans l’archive. Sinon, lorsqu’un ID de commit ou d’étiquette est fourni, l’heure de validation enregistrée dans l’objet commit référencé est utilisée à la place. En outre, l’ID de commit est stocké dans un en-tête pax étendu global si le format tar est utilisé ; il peut être extrait en utilisant git get-tar-commit-id. Dans les fichiers ZIP, il est stocké sous forme de commentaire de fichier.
OPTIONS
- --format=<fmt>
-
Format de l’archive résultante. Les valeurs possibles sont
tar
,zip
,tar.gz
,tgz
, ou tout format défini en utilisant l’option de configurationtar.<format>
.command`. Si--format
n’est pas donnée, et que le fichier de sortie est spécifié, le format est déduit du nom du fichier si possible (par exemple, en écrivant "foo.zip", la sortie sera au formatzip
). Sinon, le format de sortie esttar
. - -l
- --list
-
Afficher tous les formats disponibles.
- -v
- --verbose
-
Afficher l’état d’avancement sur stderr..
- --prefix=<préfixe>/
-
Préfixer les chemins dans l’archive avec <préfixe>/. Peut être répété ; La valeur la plus à droite est utilisée pour tous les fichiers suivis. Voir ci-dessous les valeurs utilisées par
--add-file
. - -o <fichier>
- --output=<fichier>
-
Ecrire l’archive dans <fichier> au lieu de stdout.
- --add-file=<fichier>
-
Ajouter un fichier non suivi à l’archive. Peut être répété pour ajouter plusieurs fichiers. Le chemin du fichier dans l’archive est construit en concaténant la valeur de la dernière option
--prefix
(le cas échéant) avant ce--add-file
et le nom de base de <fichier>. - --add-virtual-file=<chemin>:<contenu>
-
Ajouter le contenu spécifié à l’archive. Peut être répété pour ajouter plusieurs fichiers.
L’argument
<chemin>
peut commencer et se terminer par un caractère double guillemet littéral ; le nom du fichier contenu est interprété comme une chaîne de style C, c’est-à-dire que la barre oblique inverse est interprétée comme un caractère d’échappement. Le chemin doit être cité s’il contient un caractère deux-points, afin d’éviter que le deux-points ne soit mal interprétés comme le séparateur entre le chemin et le contenu, ou si le chemin commence ou se termine par un caractère guillemet double.Le mode fichier est limité à un fichier régulier, et l’option peut être soumise à des limites de ligne de commande dépendant de la plate-forme. Pour les cas non triviaux, écrivez un fichier non suivi et utilisez
--add-file
à la place.Notez que contrairement à
--add-file
le chemin créé dans l’archive n’est pas affecté par l’option--prefix
, car un ‘<chemin>’ complet peut être donné comme valeur de l’option. - --worktree-attributes
-
Rechercher également les attributs dans les fichiers .gitattributes de l’arbre de travail (voir ATTRIBUTS).
- --mtime=<temps>
-
Fixer l’heure de modification des entrées de l’archive. Sans cette option, l’heure du validateur est utilisée si
<arbre-esque>
est un commit ou une étiquette, et l’heure actuelle s’il s’agit d’un arbre. - <extra>
-
Il peut s’agir de n’importe quelle option que le moteur de l’archiveur comprend. Voir la section suivante.
- --remote=<dépôt>
-
Au lieu de créer une archive tar à partir du dépôt local, récupérer une archive tar à partir d’un dépôt distant. Notez que le dépôt distant peut imposer des restrictions sur les expressions sha1 qui peuvent être autorisées dans
<arbre-esque>
. Voir git-upload-archive[1] pour plus de détails. - --exec=<git-upload-archive>
-
Utilisé avec --remote pour spécifier le chemin d’accès à git-upload-archive du côté distant.
- <arbre-esque>
-
L’arbre ou le commit pour lequel produire une archive .
- <chemin>
-
Sans paramètre de chemin optionnel, tous les fichiers et sous-répertoires du répertoire de travail actuel sont inclus dans l’archive. Si un ou plusieurs chemins sont spécifiés, seuls ceux-ci sont inclus.
OPTIONS SUPPLÉMENTAIRES DE MOTEUR
zip
- -<chiffre>
-
Spécifier le niveau de compression. Les valeurs les plus élevées permettent à la commande de passer plus de temps pour compresser les fichiers à une taille plus petite. Les valeurs prises en charge vont de
-0
(stockage seul) à-9
(meilleur ratio). La valeur par défaut est-6
si elle n’est pas donnée.
CONFIGURATION
- tar.umask
-
Cette variable peut être utilisée pour limiter les bits de permission des entrées d’archives tar. La valeur par défaut est 0002, ce qui désactive le bit d’écriture générale. La valeur spéciale "user" indique que l’umask de l’utilisateur d’archivage sera utilisé à la place. Voir umask(2) pour plus de détails. Si
--remote
est utilisé alors seule la configuration du dépôt distant prend effet. - tar.<format>.command
-
Cette variable spécifie une commande shell à travers laquelle la sortie tar générée par
git archive
doit être envoyée. La commande est exécutée en utilisant le shell avec le fichier tar généré sur son entrée standard, et devrait produire la sortie finale sur sa sortie standard. Toute option de niveau de compression sera passée à la commande (par exemple,-9
).Les formats
tar.gz
ettgz
sont définis automatiquement et utilisent la commande magiquegit archive gzip
par défaut, qui invoque une mise en œuvre interne de gzip. - tar.<format>.remote
-
Si vrai, activer le format pour une utilisation par des clients distants via git-upload-archive[1]. Par défaut à faux pour les formats définis par l’utilisateur, mais vrai pour les formats
tar.gz
ettgz
.
ATTRIBUTS
- export-ignore
-
Les fichiers et répertoires avec l’attribut export-ignore ne seront pas ajoutés aux fichiers d’archives. Voir gitattributes[5] pour plus de détails.
- export-subst
-
Si l’attribut export-subst est défini pour un fichier, Git développera plusieurs caractères de remplissage lors de l’ajout de ce fichier à une archive. Voir gitattributes[5] pour plus de détails.
Notez que les attributs sont par défaut pris dans les fichiers .gitattributes
de l’arbre qui est archivé. Si vous souhaitez modifier la façon dont la sortie est générée après coup (par exemple, si vous avez validé un commit sans ajouter un export approprié dans son .gitattributes
), ajustez le fichier .gitattributes
extrait si nécessaire et utilisez l’option --worktree-attributes
. Vous pouvez également conserver les attributs nécessaires qui devraient s’appliquer lors de l’archivage de tout arbre dans votre fichier $GIT_DIR/info/attributes
.
EXEMPLES
-
git archive --format=tar --prefix=junk/ HEAD | (cd /var/tmp/ && tar xf -)
-
Crée une archive tar qui contient le contenu du dernier commit sur la branche actuelle, et l’extrait dans le répertoire
/var/tmp/junk
. -
git archive --format=tar --prefix=git-1.4.0/ v1.4.0 | gzip >git-1.4.0.tar.gz
-
Crée un tarball compressé pour la version v1.4.0.
-
git archive --format=tar.gz --prefix=git-1.4.0/ v1.4.0 >git-1.4.0.tar.gz
-
Même chose que ci-dessus, mais en utilisant la gestion du format tar.gz intégrée.
-
git archive --prefix=git-1.4.0/ -o git-1.4.0.tar.gz v1.4.0
-
Même chose que ci-dessus, mais le format est déduit du fichier de sortie.
-
git archive --format=tar --prefix=git-1.4.0/ v1.4.0^{tree} | gzip >git-1.4.0.tar.gz
-
Créer un tarball compressé pour la version v1.4.0, mais sans en-tête de pax global étendu.
-
git archive --format=zip --prefix=git-docs/ HEAD:Documentation/ > git-1.4.0-docs.zip
-
Place tout ce qui se trouve dans le répertoire Documentation/ de la tête courante dans git-1.4.0-docs.zip, avec le préfixe git-docs/.
-
git archive -o latest.zip HEAD
-
Crée une archive Zip qui contient le contenu du dernier commit sur la branche actuelle. Notez que le format de sortie est déduit par l’extension du fichier de sortie.
-
git archive -o latest.tar --prefix=build/ --add-file=configure --prefix= HEAD
-
Crée une archive tar qui contient le contenu du dernier commit sur la branche actuelle sans préfixe et le fichier non suivi configure avec le préfixe build/.
-
git config tar.tar.xz.command "xz -c"
-
Configurer un format "tar.xz" pour la création de fichiers tar compressés LZMA. Vous pouvez l’utiliser en spécifiant
--format=tar.xz
, ou en créant un fichier de sortie comme-o foo.tar.xz
.
GIT
Fait partie de la suite git[1]
TRADUCTION
Cette page de manuel a été traduite par Jean-Noël Avila <jn.avila AT free DOT fr> et les membres du projet git-manpages-l10n. Veuillez signaler toute erreur de traduction par un rapport de bogue sur le site https://github.com/jnavila/git-manpages-l10n .