Document the --attach flag.
[git/git.git] / Documentation / git-format-patch.txt
CommitLineData
215a7ad1
JH
1git-format-patch(1)
2===================
7fc9d69f
JH
3
4NAME
5----
7bd7f280 6git-format-patch - Prepare patches for e-mail submission
7fc9d69f
JH
7
8
9SYNOPSIS
10--------
353ce815 11[verse]
a15a44ef 12'git-format-patch' [-n | -k] [-o <dir> | --stdout] [--attach] [-s] [-c]
353ce815 13 [--diff-options] <his> [<mine>]
7fc9d69f
JH
14
15DESCRIPTION
16-----------
35ef3a4c 17Prepare each commit with its patch since <mine> head forked from
66f04f38
AE
18<his> head, one file per patch formatted to resemble UNIX mailbox
19format, for e-mail submission or use with gitlink:git-am[1].
35ef3a4c 20
66f04f38
AE
21Each output file is numbered sequentially from 1, and uses the
22first line of the commit message (massaged for pathname safety)
23as the filename.
24
25When -o is specified, output files are created in <dir>; otherwise
26they are created in the current working directory. This option
27is ignored if --stdout is specified.
35ef3a4c
JH
28
29When -n is specified, instead of "[PATCH] Subject", the first
30line is formatted as "[PATCH N/M] Subject", unless you have only
31one patch.
32
7fc9d69f
JH
33
34OPTIONS
35-------
6f855371 36-o|--output-directory <dir>::
35ef3a4c
JH
37 Use <dir> to store the resulting files, instead of the
38 current working directory.
39
6f855371 40-n|--numbered::
35ef3a4c
JH
41 Name output in '[PATCH n/m]' format.
42
6f855371 43-k|--keep-subject::
35ef3a4c
JH
44 Do not strip/add '[PATCH]' from the first line of the
45 commit log message.
46
6f855371
NW
47-s|--signoff::
48 Add `Signed-off-by:` line to the commit message, using
49 the committer identity of yourself.
50
51-c|--check::
52 Display suspicious lines in the patch. The definition
53 of 'suspicious lines' is currently the lines that has
54 trailing whitespaces, and the lines whose indentation
55 has a SP character immediately followed by a TAB
56 character.
57
54ba6013
JH
58--stdout::
59 This flag generates the mbox formatted output to the
60 standard output, instead of saving them into a file per
61 patch and implies --mbox.
7fc9d69f 62
a15a44ef
MM
63--attach::
64 Create attachments instead of inlining patches.
65
28ffb898
JH
66
67EXAMPLES
68--------
69
70git-format-patch -k --stdout R1..R2 | git-am -3 -k::
71 Extract commits between revisions R1 and R2, and apply
72 them on top of the current branch using `git-am` to
73 cherry-pick them.
74
75git-format-patch origin::
76 Extract commits the current branch accumulated since it
77 pulled from origin the last time in a patch form for
78 e-mail submission.
79
803f498c
JH
80git-format-patch -M -B origin::
81 The same as the previous one, except detect and handle
82 renames and complete rewrites intelligently to produce
83 renaming patch. A renaming patch reduces the amount of
84 text output, and generally makes it easier to review
85 it. Note that the "patch" program does not understand
86 renaming patch well, so use it only when you know the
87 recipient uses git to apply your patch.
88
28ffb898
JH
89
90See Also
91--------
353ce815 92gitlink:git-am[1], gitlink:git-send-email[1]
28ffb898
JH
93
94
7fc9d69f
JH
95Author
96------
97Written by Junio C Hamano <junkio@cox.net>
98
99Documentation
100--------------
101Documentation by Junio C Hamano and the git-list <git@vger.kernel.org>.
102
103GIT
104---
a7154e91 105Part of the gitlink:git[7] suite
7fc9d69f 106