Update documentation for git-format-patch

[jc: adjusted for recently resurrected features]

Signed-off-by: Dennis Stosberg <dennis@stosberg.net>
Signed-off-by: Junio C Hamano <junkio@cox.net>
This commit is contained in:
Dennis Stosberg 2006-05-31 16:14:08 +02:00 committed by Junio C Hamano
parent 86f7780c0b
commit 2052d146f6

View File

@ -9,37 +9,46 @@ git-format-patch - Prepare patches for e-mail submission
SYNOPSIS SYNOPSIS
-------- --------
[verse] [verse]
'git-format-patch' [-n | -k] [-o <dir> | --stdout] [--attach] [-s] [-c] 'git-format-patch' [-n | -k] [-o <dir> | --stdout] [--attach]
[--diff-options] <his> [<mine>] [-s | --signoff] [--diff-options] [--start-number <n>]
<since>[..<until>]
DESCRIPTION DESCRIPTION
----------- -----------
Prepare each commit with its patch since <mine> head forked from
<his> head, one file per patch formatted to resemble UNIX mailbox Prepare each commit between <since> and <until> with its patch in
format, for e-mail submission or use with gitlink:git-am[1]. one file per commit, formatted to resemble UNIX mailbox format.
If ..<until> is not specified, the head of the current working
tree is implied.
The output of this command is convenient for e-mail submission or
for use with gitlink:git-am[1].
Each output file is numbered sequentially from 1, and uses the Each output file is numbered sequentially from 1, and uses the
first line of the commit message (massaged for pathname safety) first line of the commit message (massaged for pathname safety) as
as the filename. the filename. The names of the output files are printed to standard
output, unless the --stdout option is specified.
When -o is specified, output files are created in <dir>; otherwise If -o is specified, output files are created in <dir>. Otherwise
they are created in the current working directory. This option they are created in the current working directory.
is ignored if --stdout is specified.
When -n is specified, instead of "[PATCH] Subject", the first If -n is specified, instead of "[PATCH] Subject", the first line
line is formatted as "[PATCH N/M] Subject", unless you have only is formatted as "[PATCH n/m] Subject".
one patch.
OPTIONS OPTIONS
------- -------
-o|--output-directory <dir>:: -o|--output-directory <dir>::
Use <dir> to store the resulting files, instead of the Use <dir> to store the resulting files, instead of the
current working directory. current working directory. This option is ignored if
--stdout is specified.
-n|--numbered:: -n|--numbered::
Name output in '[PATCH n/m]' format. Name output in '[PATCH n/m]' format.
--start-number <n>::
Start numbering the patches at <n> instead of 1.
-k|--keep-subject:: -k|--keep-subject::
Do not strip/add '[PATCH]' from the first line of the Do not strip/add '[PATCH]' from the first line of the
commit log message. commit log message.
@ -48,17 +57,9 @@ OPTIONS
Add `Signed-off-by:` line to the commit message, using Add `Signed-off-by:` line to the commit message, using
the committer identity of yourself. the committer identity of yourself.
-c|--check::
Display suspicious lines in the patch. The definition
of 'suspicious lines' is currently the lines that has
trailing whitespaces, and the lines whose indentation
has a SP character immediately followed by a TAB
character.
--stdout:: --stdout::
This flag generates the mbox formatted output to the Print all commits to the standard output in mbox format,
standard output, instead of saving them into a file per instead of creating a file for each one.
patch and implies --mbox.
--attach:: --attach::
Create attachments instead of inlining patches. Create attachments instead of inlining patches.
@ -82,18 +83,18 @@ git-format-patch -k --stdout R1..R2 | git-am -3 -k::
cherry-pick them. cherry-pick them.
git-format-patch origin:: git-format-patch origin::
Extract commits the current branch accumulated since it Extract all commits which are in the current branch but
pulled from origin the last time in a patch form for not in the origin branch. For each commit a separate file
e-mail submission. is created in the current directory.
git-format-patch -M -B origin:: git-format-patch -M -B origin::
The same as the previous one, except detect and handle The same as the previous one. Additionally, it detects
renames and complete rewrites intelligently to produce and handles renames and complete rewrites intelligently to
renaming patch. A renaming patch reduces the amount of produce a renaming patch. A renaming patch reduces the
text output, and generally makes it easier to review amount of text output, and generally makes it easier to
it. Note that the "patch" program does not understand review it. Note that the "patch" program does not
renaming patch well, so use it only when you know the understand renaming patches, so use it only when you know
recipient uses git to apply your patch. the recipient uses git to apply your patch.
See Also See Also