info > GIT-MAILINFO(1)

📛 NAME

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

🚀 Quick Reference

Use CaseCommandDescription
đŸ“Ĩ Extract from email filegit mailinfo msg patch < email.txtReads email from stdin, writes commit log to msg and patch to patch
âœ‰ī¸ Preserve Subject linegit mailinfo -k msg patch < email.txtPrevents stripping of Re:, [PATCH], etc. from the subject
🔍 Strip only [PATCH] bracketsgit mailinfo -b msg patch < email.txtRemoves only bracket pairs containing "PATCH"
🌐 Autodetect charset (default)git mailinfo -u msg patch < email.txtRecodes metadata to commit encoding (UTF-8 by default)
đŸšĢ No charset recodinggit mailinfo -n msg patch < email.txtDisables all metadata charset conversion
📧 Append Message-IDgit mailinfo -m msg patch < email.txtCopies the Message-ID header to the end of the commit message
âœ‚ī¸ Scissors linegit mailinfo --scissors msg patch < email.txtIgnores everything before a scissors line (-- >8 --)
🔄 Handle CRLFgit mailinfo --quoted-cr=strip msg patch < email.txtConverts decoded CRLF line endings to LF

📋 SYNOPSIS

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

📖 DESCRIPTION

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

-k

âœ‰ī¸ 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 remain:

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

-b

🔍 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 "PATCH".

-u

🌐 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.

--encoding=<encoding>

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

-n

đŸšĢ 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.

--scissors

âœ‚ī¸ 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 mailinfo.scissors.

--no-scissors

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

--quoted-cr=<action>

🔄 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:

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

<msg>

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

<patch>

đŸ“Ļ The patch extracted from e-mail.

🐙 GIT

Part of the git(1) suite

GIT-MAILINFO(1)
📛 NAME 🚀 Quick Reference 📋 SYNOPSIS 📖 DESCRIPTION âš™ī¸ OPTIONS 🐙 GIT

Generated by phpman v4.9.25-8-g32d6339 · Markdown · JSON · MCP Author: Che Dong Under GNU General Public License
2026-07-13 08:04 @216.73.217.22
CrawledBy Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
Valid XHTML 1.0 Transitional!Valid CSS!
Enhanced by LLM: deepseek-v4-pro / taotoken.net / www.chedong.com - original format

^_top_^