git-mailinfo(1) — Linux manual page


GIT-MAILINFO(1)                Git Manual                GIT-MAILINFO(1)

NAME         top

       git-mailinfo - Extracts patch and authorship from a single e-mail

SYNOPSIS         top

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

DESCRIPTION         top

       Reads a single e-mail message from the standard input, and writes
       the commit log message in <msg> file, and the patches in <patch>
       file. The author name, e-mail and e-mail subject are written out
       to the standard output to be used by git am to create a commit.
       It is usually not necessary to use this command directly. See
       git-am(1) instead.

OPTIONS         top

           Usually the program removes email cruft from the Subject:
           header line to extract the title line for the commit log
           message. This option prevents this munging, and is most
           useful when used to read back git format-patch -k output.

           Specifically, the following are removed until none of them

           •   Leading and trailing whitespace.

           •   Leading Re:, re:, and :.

           •   Leading bracketed strings (between [ and ], usually

           Finally, runs of whitespace are normalized to a single ASCII
           space character.

           When -k is not in effect, all leading strings bracketed with
           [ and ] pairs are stripped. This option limits the stripping
           to only the pairs whose bracketed string contains the word

           The commit log message, author name and author email are
           taken from the e-mail, and after minimally decoding MIME
           transfer encoding, re-coded in the charset specified by
           i18n.commitEncoding (defaulting to UTF-8) by transliterating
           them. This used to be optional but now it is the default.

           Note that the patch is always used as-is without charset
           conversion, even with this flag.

           Similar to -u. But when re-coding, the charset specified here
           is used instead of the one specified by i18n.commitEncoding
           or UTF-8.

           Disable all charset re-coding of the metadata.

       -m, --message-id
           Copy the Message-ID header at the end of the commit message.
           This is useful in order to associate commits with mailing
           list discussions.

           Remove everything in body before a scissors line (e.g. "-- >8
           --"). The line represents scissors and perforation marks, and
           is used to request the reader to cut the message at that
           line. If that line appears in the body of the message before
           the patch, everything before it (including the scissors line
           itself) is ignored when this option is used.

           This is useful if you want to begin your message in a
           discussion thread with comments and suggestions on the
           message you are responding to, and to conclude it with a
           patch submission, separating the discussion and the beginning
           of the proposed commit log message with a scissors line.

           This can be enabled by default with the configuration option

           Ignore scissors lines. Useful for overriding
           mailinfo.scissors settings.

           Action when processes email messages sent with base64 or
           quoted-printable encoding, and the decoded lines end with a
           CRLF instead of a simple LF.

           The valid actions are:

           •   nowarn: Git will do nothing when such a CRLF is found.

           •   warn: Git will issue a warning for each message if such a
               CRLF is found.

           •   strip: Git will convert those CRLF to LF.

           The default action could be set by configuration option
           mailinfo.quotedCR. If no such configuration option has been
           set, warn will be used.

           The commit log message extracted from e-mail, usually except
           the title line which comes from e-mail Subject.

           The patch extracted from e-mail.


       Everything below this line in this section is selectively
       included from the git-config(1) documentation. The content is the
       same as what’s found there:

           If true, makes git-mailinfo(1) (and therefore git-am(1)) act
           by default as if the --scissors option was provided on the
           command-line. When active, this feature removes everything
           from the message body before a scissors line (i.e. consisting
           mainly of ">8", "8<" and "-").

GIT         top

       Part of the git(1) suite

COLOPHON         top

       This page is part of the git (Git distributed version control
       system) project.  Information about the project can be found at
       ⟨⟩.  If you have a bug report for this manual
       page, see ⟨⟩.  This page was obtained
       from the project's upstream Git repository
       ⟨⟩ on 2023-12-22.  (At that time,
       the date of the most recent commit that was found in the
       repository was 2023-12-20.)  If you discover any rendering
       problems in this HTML version of the page, or you believe there
       is a better or more up-to-date source for the page, or you have
       corrections or improvements to the information in this COLOPHON
       (which is not part of the original manual page), send a mail to

Git         2023-12-20                GIT-MAILINFO(1)

Pages that refer to this page: git(1)git-am(1)git-config(1)git-mailinfo(1)git-quiltimport(1)