Git
Français ▾ Topics ▾ Latest version ▾ git-am last updated in 2.34.1

NOM

git-am - Appliquer une série de rustines depuis des fichiers mailbox

SYNOPSIS

git am [--signoff] [--keep] [--[no-]keep-cr] [--[no-]utf8]
	 [--[no-]3way] [--interactive] [--committer-date-is-author-date]
	 [--ignore-date] [--ignore-space-change | --ignore-whitespace]
	 [--whitespace=<option>] [-C<n>] [-p<n>] [--directory=<répertoire>]
	 [--exclude=<path>] [--include=<path>] [--reject] [-q | --quiet]
	 [--[no-]scissors] [-S[<idclé>]] [--patch-format=<format>]
	 [--quoted-cr=<action>]
	 [--empty=(stop|drop|keep)]
	 [(<mbox> | <Maildir>)…​]
git am (--continue | --skip | --abort | --quit | --show-current-patch[=(diff|raw)])

DESCRIPTION

Découpe des messages courriel dans un boîte aux lettre en message, auteur, information et rustine de commit, et les applique sur la branche en cours.

OPTIONS

(<mbox>|<Maildir>)…​

La liste de fichiers de boîte aux lettres desquelles on lit les rustines. Si vous ne fournissez pas cet argument, la commande lit depuis l’entrée standard. Si vous fournissez des répertoires, ils sont lus comme des Maildirs.

-s
--signoff

Ajouter une ligne terminale Signed-off-by au message de commit, en utilisant votre identité pour validateur. Référez-vous à l’option de contre-signature dans git-commit[1] pour plus d’information.

-k
--keep

Passer l’option -k à git mailinfo (voir git-mailinfo[1]).

--keep-non-patch

Passer l’option -b à git mailinfo (voir git-mailinfo[1]).

--[no-]keep-cr

Avec --keep-cr, appeler git mailsplit (voir git-mailsplit[1]) avec la même option, pour l’empêcher de supprimer les CR en fin de ligne. La variable de configuration am.keepcr peut être utilisée pour spécifier le comportement par défaut. --no-keep-cr permet de surcharger am.keepcr.

-c
--scissors

Retirer tout du corps du message avant la ligne de ciseaux (voir git-mailinfo[1]). Peut être activé par défaut en utilisant la variable de configuration mailinfo.scissors.

--no-scissors

Ignorer les lignes ciseaux (voir git-mailinfo[1]).

--quoted-cr=<action>

Ce drapeau sera transmis à git mailinfo (voir git-mailinfo[1]).

--empty=(stop|drop|keep)

Par défaut, ou lorsque l’option est définie sur stop, la commande sort en erreur sur un message électronique d’entrée ne contenant pas de rustine et s’arrête au milieu de la session am en cours. Lorsque cette option est définie sur drop, ignorer un tel message électronique à la place. Lorsque cette option est définie sur keep, créer un commit vide, en enregistrant le contenu du message électronique comme message de validation.

-m
--message-id

Passer le drapeau -m à git mailinfo (voir git-mailinfo[1]), de sorte que l’en-tête Message-ID soit ajouté au message de validation. La variable de configuration am.messageid peut être utilisée pour spécifier le comportement par défaut.

--no-message-id

Ne pas ajouter l’entête Message-ID au message de validation. no-message-id est utile pour surcharger am.messageid.

-q
--quiet

N’afficher que les messages d’erreur.

-u
--utf8

Passer l’option -u à git mailinfo (voir git-mailinfo[1]). Le message de validation proposé extrait depuis le courriel est re-codé en UTF-8 (la variable de configuration i18n.commitEncoding peut spécifier un codage préféré s’il est différent d’UTF-8).

C’était optionnel dans les versions précédentes de git, mais c’est à présent par défaut. Vous pouvez utiliser --no-utf8 pour surcharger.

--no-utf8

Passer l’option -n à git mailinfo (voir git-mailinfo[1]).

-3
--3way
--no-3way

Quand la rustine ne s’applique pas correctement, revenir à une fusion à 3 points si la rustine contient l’identité des blobs auxquels elle est supposée s’appliquer et que ces blobs sont disponibles localement. --no-3way permet de surcharger la variable de configuration am.threeWay. Pour plus d’information, référez-vous à am.threeWay dans git-config[1].

--rerere-autoupdate
--no-rerere-autoupdate

Permettre au mécanisme rerere de mettre à jour l’index avec le résultat de la résolution automatique des conflits si possible.

--ignore-space-change
--ignore-whitespace
--whitespace=<option>
-C<n>
-p<n>
--directory=<rép.>
--exclude=<chemin>
--include=<chemin>
--reject

Ces drapeaux sont transmis au programme git apply (voir git-apply[1]) qui applique le patch.

--patch-format

Par défaut, la commande tentera de détecter automatiquement le format de la rustine. Cette option permet à l’utilisateur de contourner la détection automatique et de spécifier le format de rustine comme lequel la(les) rustine(s) doit/doivent être interprétée(s). Les formats valides sont mbox, mboxrd, stgit, stgit-series et hg.

-i
--interactive

Lancer de manière interactive.

--committer-date-is-author-date

Par défaut, la commande enregistre la date du message électronique comme date de l’auteur du commit, et utilise l’heure de création du commit comme date du validateur. Cela permet à l’utilisateur de mentir sur la date du validateur en utilisant la même valeur que la date de l’auteur.

--ignore-date

Par défaut, la commande enregistre la date du message électronique comme date de l’auteur du commit, et utilise l’heure de création du commit comme date du committeur. Cela permet à l’utilisateur de mentir sur la date de l’auteur en utilisant la même valeur que la date du validateur.

--skip

Sauter la rustine actuelle. Cela n’a de sens que si l’on redémarre une rustine avortée.

-S[<idclé>]
--gpg-sign[=<idclé>]
--no-gpg-sign

Signer les commits avec GPG. L’argument idclé est optionnel avec par défaut l’identité du validateur ; si spécifiée, elle doit être collée à l’option sans aucun espace. --no-gpg-sign est utile pour annuler l’effet de la variable de configuration commit.gpgSign ainsi que tout --gpg-sign précédent.

--continue
-r
--resolved

Après l’échec d’une rustine (par exemple, en cas de tentative d’application d’une rustine conflictuelle), l’utilisateur l’a appliquée à la main et le fichier d’index stocke le résultat de l’application. Faire un commit en utilisant le journal des auteurs et du commit extrait du message électronique et du fichier d’index actuel, et continuer.

--resolvemsg=<msg>

En cas de défaillance d’un patch, <msg> sera imprimé à l’écran avant de sortir. Ceci remplace le message standard vous informant d’utiliser --continue ou --skip pour gérer l’échec. Ceci est uniquement pour un usage interne entre git rebase et git am.

--abort

Restaurer la branche originale et abandonner les opérations de rustinage. Rétablir le contenu des fichiers impliqués dans l’opération am à leur état pré-am.

--quit

Abandonner l’opération de rustinage mais garder HEAD et l’index intacts.

--show-current-patch[=(diff|raw)]

Montrer le message auquel git am s’est arrêté en raison de conflits. Si raw est spécifié, afficher le contenu brut du message électronique ; si diff, afficher uniquement la partie diff. La valeur par défaut est raw.

--allow-empty

Après l’échec de rustinage sur un message électronique d’entrée dépourvu de rustine, créer un commit vide avec le contenu du message électronique comme message de validation.

DISCUSSION

Le nom de l’auteur du commit est tiré du "From: "et la date de l’auteur du commit est tirée de la ligne "Date:" du message. Le "Subject:" est utilisé comme titre du commit, après avoir supprimé le préfixe commun "[PATCH <quelque chose>]". La ligne "Subject:"est censée décrire de manière concise l’objet du commit en une seule ligne de texte.

Les lignes «From:», «Date:» et «Subject:» commençant le corps remplacent le nom de l’auteur de la validation et les valeurs de titre respectives tirées des en-têtes.

Le message de validation est formé par le titre tiré du "Subject:", une ligne vide et le corps du message jusqu’au début du patch. Les espaces en excès à la fin de chaque ligne sont automatiquement supprimés.

La rustine devrait être incluse, à la suite immédiate du message. Toute ligne qui est de la forme :

  • trois tirets et fin de ligne, ou

  • une ligne qui commence par "diff -", ou

  • une ligne qui commence par "Index : "

est pris comme le début d’une rustine, et le message de journal de validation est terminé avant la première occurrence d’une telle ligne.

Lorsque vous invoquez initialement git am, vous lui donnez les noms des boîtes aux lettres à traiter. Il s’interrompt dès le premier patch qui ne s’applique pas. Vous pouvez revenir à un état stable de deux façons :

  1. sauter la rustine en cours en relançant la commande avec l’option --skip.

  2. résoudre manuellement le conflit dans le répertoire de travail, et mettre à jour le fichier d’index pour le mettre dans un état que la rustine aurait dû produire. Ensuite, lancer la commande avec l’option --continue.

La commande refuse de traiter de nouvelles boîtes aux lettres tant que l’opération en cours n’est pas terminée, donc si vous décidez de repartir de zéro, lancez git am --abort avant d’exécuter la commande avec les noms des boîtes aux lettres.

Avant l’application de tout correctif, ORIG_HEAD est placé au sommet de la branche en cours. C’est utile si vous avez des problèmes avec plusieurs commits, par exemple si vous lancez git am sur la mauvaise branche ou si une erreur dans les commits est plus facilement corrigée en changeant de boîte aux lettres (par exemple des erreurs dans les lignes "From :").

CROCHETS

Cette commande peut lancer les crochets applypatch-msg, pre-applypatch et post-applypatch. Voir githooks[5] pour de plus amples informations.

VOIR AUSSI

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 .

scroll-to-top