blob: 28060283c703a991d4d2aa36b99b867b8d6c8d43 [file] [log] [blame]
Junio C Hamano7fc9d692005-08-23 01:49:47 -07001git-mailinfo(1)
2===============
3
4NAME
5----
Junio C Hamanoc3f0baa2007-01-18 15:53:37 -08006git-mailinfo - Extracts patch and authorship from a single e-mail message
Junio C Hamano7fc9d692005-08-23 01:49:47 -07007
8
9SYNOPSIS
10--------
Martin von Zweigbergk7791a1d2011-07-01 22:38:26 -040011[verse]
Đoàn Trần Công Danhf1aa2992021-05-10 00:12:11 +070012'git mailinfo' [-k|-b] [-u | --encoding=<encoding> | -n]
13 [--[no-]scissors] [--quoted-cr=<action>]
14 <msg> <patch>
Junio C Hamanof85a4192005-08-29 17:21:06 -070015
Junio C Hamano7fc9d692005-08-23 01:49:47 -070016
17DESCRIPTION
18-----------
Markus Heidelberg04c8ce92008-12-19 13:14:18 +010019Reads a single e-mail message from the standard input, and
Junio C Hamanof85a4192005-08-29 17:21:06 -070020writes the commit log message in <msg> file, and the patches in
21<patch> file. The author name, e-mail and e-mail subject are
Thomas Rast0b444cd2010-01-10 00:33:00 +010022written out to the standard output to be used by 'git am'
Junio C Hamanof85a4192005-08-29 17:21:06 -070023to create a commit. It is usually not necessary to use this
Dan McGee5162e692007-12-29 00:20:38 -060024command directly. See linkgit:git-am[1] instead.
Junio C Hamano7fc9d692005-08-23 01:49:47 -070025
26
27OPTIONS
28-------
Junio C Hamanof85a4192005-08-29 17:21:06 -070029-k::
Thomas Rast82553cb2012-01-11 21:13:42 +010030 Usually the program removes email cruft from the Subject:
31 header line to extract the title line for the commit log
32 message. This option prevents this munging, and is most
33 useful when used to read back 'git format-patch -k' output.
34+
35Specifically, the following are removed until none of them remain:
36+
37--
38* Leading and trailing whitespace.
39
40* Leading `Re:`, `re:`, and `:`.
41
42* Leading bracketed strings (between `[` and `]`, usually
43 `[PATCH]`).
44--
45+
46Finally, runs of whitespace are normalized to a single ASCII space
47character.
Junio C Hamano7fc9d692005-08-23 01:49:47 -070048
Junio C Hamano17635fc2009-07-15 15:31:12 -070049-b::
50 When -k is not in effect, all leading strings bracketed with '['
51 and ']' pairs are stripped. This option limits the stripping to
52 only the pairs whose bracketed string contains the word "PATCH".
53
Junio C Hamanof85a4192005-08-29 17:21:06 -070054-u::
Junio C Hamanobb1091a2007-01-09 21:31:36 -080055 The commit log message, author name and author email are
56 taken from the e-mail, and after minimally decoding MIME
Zhang Lee0a91102010-06-14 02:49:47 +080057 transfer encoding, re-coded in the charset specified by
Denton Liu77645b52021-02-24 12:26:39 -080058 `i18n.commitEncoding` (defaulting to UTF-8) by transliterating
Junio C Hamanobb1091a2007-01-09 21:31:36 -080059 them. This used to be optional but now it is the default.
60+
61Note that the patch is always used as-is without charset
62conversion, even with this flag.
Junio C Hamanof85a4192005-08-29 17:21:06 -070063
Junio C Hamano9f638922005-11-28 01:29:52 -080064--encoding=<encoding>::
Zhang Lee0a91102010-06-14 02:49:47 +080065 Similar to -u. But when re-coding, the charset specified here is
Denton Liu77645b52021-02-24 12:26:39 -080066 used instead of the one specified by `i18n.commitEncoding` or UTF-8.
Junio C Hamano9f638922005-11-28 01:29:52 -080067
Lukas Sandströmb4958182008-07-10 23:36:28 +020068-n::
69 Disable all charset re-coding of the metadata.
70
Paolo Bonzini452dfbe2014-11-25 15:00:55 +010071-m::
72--message-id::
73 Copy the Message-ID header at the end of the commit message. This
74 is useful in order to associate commits with mailing list discussions.
75
Junio C Hamano017678b2009-08-26 21:36:05 -070076--scissors::
Evan Gates287416d2020-09-28 15:51:08 -070077 Remove everything in body before a scissors line (e.g. "-- >8 --").
78 The line represents scissors and perforation marks, and is used to
79 request the reader to cut the message at that line. If that line
Junio C Hamano017678b2009-08-26 21:36:05 -070080 appears in the body of the message before the patch, everything
81 before it (including the scissors line itself) is ignored when
82 this option is used.
83+
84This is useful if you want to begin your message in a discussion thread
85with comments and suggestions on the message you are responding to, and to
86conclude it with a patch submission, separating the discussion and the
87beginning of the proposed commit log message with a scissors line.
Nicolas Sebrecht434a6db2009-09-11 02:29:58 +020088+
Vasco Almeidadee23032016-05-11 20:42:54 +000089This can be enabled by default with the configuration option mailinfo.scissors.
Nicolas Sebrecht434a6db2009-09-11 02:29:58 +020090
91--no-scissors::
92 Ignore scissors lines. Useful for overriding mailinfo.scissors settings.
Junio C Hamano017678b2009-08-26 21:36:05 -070093
Đoàn Trần Công Danhf1aa2992021-05-10 00:12:11 +070094--quoted-cr=<action>::
95 Action when processes email messages sent with base64 or
96 quoted-printable encoding, and the decoded lines end with a CRLF
97 instead of a simple LF.
98+
99The valid actions are:
100+
101--
102* `nowarn`: Git will do nothing when such a CRLF is found.
103* `warn`: Git will issue a warning for each message if such a CRLF is
104 found.
Đoàn Trần Công Danh133a4fd2021-05-10 00:12:12 +0700105* `strip`: Git will convert those CRLF to LF.
Đoàn Trần Công Danhf1aa2992021-05-10 00:12:11 +0700106--
107+
108The default action could be set by configuration option `mailinfo.quotedCR`.
109If no such configuration option has been set, `warn` will be used.
110
Junio C Hamanof85a4192005-08-29 17:21:06 -0700111<msg>::
112 The commit log message extracted from e-mail, usually
113 except the title line which comes from e-mail Subject.
114
115<patch>::
116 The patch extracted from e-mail.
Junio C Hamano7fc9d692005-08-23 01:49:47 -0700117
Ævar Arnfjörð Bjarmason16f6b0d2022-09-07 10:27:04 +0200118CONFIGURATION
119-------------
120
121include::includes/cmd-config-section-all.txt[]
122
123include::config/mailinfo.txt[]
124
Junio C Hamano7fc9d692005-08-23 01:49:47 -0700125GIT
126---
Christian Couder9e1f0a82008-06-06 09:07:32 +0200127Part of the linkgit:git[1] suite