English ▾ Themen ▾ Neueste Version ▾ git-mailinfo zuletzt aktualisiert in 2.43.0

NAME

git-mailinfo - Extrahiert Patch und Urheberschaft aus einer einzelnen E-Mail-Nachricht

SYNOPSIS

git mailinfo [-k|-b] [-u | --encoding=<encoding> | -n]
	       [--[no-]scissors] [--quoted-cr=<action>]
	       <msg> <patch>

BESCHREIBUNG

Liest eine einzelne E-Mail-Nachricht vom Standard-Input und schreibt die Commit-Log-Nachricht in die Datei <msg> und die Patches in die Datei <patch>. Der Autorenname, die E-Mail und der E-Mail-Betreff werden auf der Standardausgabe ausgegeben, um von git am zur Erstellung eines Commits verwendet zu werden. Es ist normalerweise nicht notwendig, diesen Befehl direkt zu verwenden. Sehen Sie stattdessen git-am[1].

OPTIONEN

-k

Normalerweise entfernt das Programm E-Mail-Schrott aus der Betreffzeile (Subject:), um die Titelzeile für die Commit-Log-Nachricht zu extrahieren. Diese Option verhindert diese Manipulation und ist am nützlichsten, wenn sie zum Zurücklesen von git format-patch -k-Ausgaben verwendet wird.

Insbesondere werden die folgenden Zeichen entfernt, bis keines mehr übrig ist

  • Führende und nachfolgende Leerzeichen.

  • Führende Re:, re: und :.

  • Führende Zeichenketten in Klammern (zwischen [ und ], normalerweise [PATCH]).

Schließlich werden Leerzeichenfolgen zu einem einzelnen ASCII-Leerzeichen normalisiert.

-b

Wenn -k nicht aktiv ist, werden alle führenden Zeichenketten, die mit [ und ] Paaren umschlossen sind, entfernt. Diese Option beschränkt das Entfernen auf nur die Paare, deren Zeichenkette in Klammern das Wort "PATCH" enthält.

-u

Die Commit-Log-Nachricht, der Autorenname und die E-Mail-Adresse des Autors werden aus der E-Mail entnommen und nach minimaler Dekodierung der MIME-Transferkodierung in der von i18n.commitEncoding angegebenen Zeichenkodierung (Standard ist UTF-8) durch Transliteration neu kodiert. Dies war früher optional, ist aber jetzt Standard.

Beachten Sie, dass der Patch immer unverändert ohne Zeichenkodierungskonvertierung verwendet wird, auch mit dieser Option.

--encoding=<encoding>

Ähnlich wie -u. Beim Neukodieren wird jedoch die hier angegebene Zeichenkodierung anstelle der von i18n.commitEncoding oder UTF-8 angegebenen verwendet.

-n

Deaktiviert die gesamte Zeichenkodierungs-Neukodierung der Metadaten.

-m
--message-id

Kopiert den Message-ID-Header am Ende der Commit-Nachricht. Dies ist nützlich, um Commits mit Mailinglisten-Diskussionen zu verknüpfen.

--scissors

Entfernt alles im Körper vor einer Scherenlinie (z. B. "-- >8 --"). Die Linie repräsentiert Scheren- und Perforationsmarkierungen und wird verwendet, um den Leser aufzufordern, die Nachricht an dieser Linie zu schneiden. Wenn diese Linie vor dem Patch im Nachrichtentext erscheint, wird alles davor (einschließlich der Scherenlinie selbst) ignoriert, wenn diese Option verwendet wird.

Dies ist nützlich, wenn Sie Ihre Nachricht in einem Diskussionsfaden mit Kommentaren und Vorschlägen zur Nachricht, auf die Sie antworten, beginnen und sie mit einer Patch-Einreichung abschließen möchten, wobei die Diskussion und der Beginn der vorgeschlagenen Commit-Log-Nachricht durch eine Scherenlinie getrennt werden.

Dies kann standardmäßig mit der Konfigurationsoption mailinfo.scissors aktiviert werden.

--no-scissors

Ignoriert Scherenlinien. Nützlich zum Überschreiben von mailinfo.scissors-Einstellungen.

--quoted-cr=<aktion>

Aktion bei der Verarbeitung von E-Mail-Nachrichten, die mit Base64 oder Quoted-Printable-Kodierung gesendet wurden und deren dekodierte Zeilen mit einem CRLF anstelle eines einfachen LF enden.

Die gültigen Aktionen sind

  • nowarn: Git tut nichts, wenn ein solches CRLF gefunden wird.

  • warn: Git gibt für jede Nachricht eine Warnung aus, wenn ein solches CRLF gefunden wird.

  • strip: Git konvertiert diese CRLF in LF.

Die Standardaktion kann durch die Konfigurationsoption mailinfo.quotedCR festgelegt werden. Wenn keine solche Konfigurationsoption gesetzt wurde, wird warn verwendet.

<msg>

Die aus der E-Mail extrahierte Commit-Log-Nachricht, normalerweise ohne die Titelzeile, die vom E-Mail-Betreff stammt.

<patch>

Der aus der E-Mail extrahierte Patch.

KONFIGURATION

Alles unterhalb dieser Zeile in diesem Abschnitt wird selektiv aus der git-config[1]-Dokumentation übernommen. Der Inhalt ist derselbe wie dort zu finden.

mailinfo.scissors

Wenn diese Option auf true gesetzt ist, verhält sich git-mailinfo[1] (und damit git-am[1]) standardmäßig so, als ob die Option --scissors auf der Kommandozeile angegeben worden wäre. Wenn diese Funktion aktiv ist, entfernt sie alles aus dem Nachrichtenkörper vor einer Scherenlinie (d. h. hauptsächlich bestehend aus ">8", "8<" und "-").

GIT

Teil der git[1] Suite