]> Pileus Git - ~andy/git/blob - Documentation/git-mailinfo.txt
mailinfo documentation: accurately describe non -k case
[~andy/git] / Documentation / git-mailinfo.txt
1 git-mailinfo(1)
2 ===============
3
4 NAME
5 ----
6 git-mailinfo - Extracts patch and authorship from a single e-mail message
7
8
9 SYNOPSIS
10 --------
11 'git mailinfo' [-k|-b] [-u | --encoding=<encoding> | -n] [--scissors] <msg> <patch>
12
13
14 DESCRIPTION
15 -----------
16 Reads a single e-mail message from the standard input, and
17 writes the commit log message in <msg> file, and the patches in
18 <patch> file.  The author name, e-mail and e-mail subject are
19 written out to the standard output to be used by 'git am'
20 to create a commit.  It is usually not necessary to use this
21 command directly.  See linkgit:git-am[1] instead.
22
23
24 OPTIONS
25 -------
26 -k::
27         Usually the program removes email cruft from the Subject:
28         header line to extract the title line for the commit log
29         message.  This option prevents this munging, and is most
30         useful when used to read back 'git format-patch -k' output.
31 +
32 Specifically, the following are removed until none of them remain:
33 +
34 --
35 *       Leading and trailing whitespace.
36
37 *       Leading `Re:`, `re:`, and `:`.
38
39 *       Leading bracketed strings (between `[` and `]`, usually
40         `[PATCH]`).
41 --
42 +
43 Finally, runs of whitespace are normalized to a single ASCII space
44 character.
45
46 -b::
47         When -k is not in effect, all leading strings bracketed with '['
48         and ']' pairs are stripped.  This option limits the stripping to
49         only the pairs whose bracketed string contains the word "PATCH".
50
51 -u::
52         The commit log message, author name and author email are
53         taken from the e-mail, and after minimally decoding MIME
54         transfer encoding, re-coded in the charset specified by
55         i18n.commitencoding (defaulting to UTF-8) by transliterating
56         them.  This used to be optional but now it is the default.
57 +
58 Note that the patch is always used as-is without charset
59 conversion, even with this flag.
60
61 --encoding=<encoding>::
62         Similar to -u.  But when re-coding, the charset specified here is
63         used instead of the one specified by i18n.commitencoding or UTF-8.
64
65 -n::
66         Disable all charset re-coding of the metadata.
67
68 --scissors::
69         Remove everything in body before a scissors line.  A line that
70         mainly consists of scissors (either ">8" or "8<") and perforation
71         (dash "-") marks is called a scissors line, and is used to request
72         the reader to cut the message at that line.  If such a line
73         appears in the body of the message before the patch, everything
74         before it (including the scissors line itself) is ignored when
75         this option is used.
76 +
77 This is useful if you want to begin your message in a discussion thread
78 with comments and suggestions on the message you are responding to, and to
79 conclude it with a patch submission, separating the discussion and the
80 beginning of the proposed commit log message with a scissors line.
81 +
82 This can enabled by default with the configuration option mailinfo.scissors.
83
84 --no-scissors::
85         Ignore scissors lines. Useful for overriding mailinfo.scissors settings.
86
87 <msg>::
88         The commit log message extracted from e-mail, usually
89         except the title line which comes from e-mail Subject.
90
91 <patch>::
92         The patch extracted from e-mail.
93
94 GIT
95 ---
96 Part of the linkgit:git[1] suite