.\"Generated by db2man.xsl. Don't modify this, modify the source. .de Sh \" Subsection .br .if t .Sp .ne 5 .PP \fB\\$1\fR .PP .. .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Ip \" List item .br .ie \\n(.$>=3 .ne \\$3 .el .ne 3 .IP "\\$1" \\$2 .. .TH "GIT-FORMAT-PATCH" 1 "" "" "" .SH NAME git-format-patch \- Prepare patches for e-mail submission .SH "SYNOPSIS" .nf \fIgit\-format\-patch\fR [\-n | \-k] [\-o | \-\-stdout] [\-\-attach] [\-s] [\-c] [\-\-diff\-options] [] .fi .SH "DESCRIPTION" Prepare each commit with its patch since head forked from head, one file per patch formatted to resemble UNIX mailbox format, for e\-mail submission or use with \fBgit\-am\fR(1)\&. Each output file is numbered sequentially from 1, and uses the first line of the commit message (massaged for pathname safety) as the filename\&. When \-o is specified, output files are created in ; otherwise they are created in the current working directory\&. This option is ignored if \-\-stdout is specified\&. When \-n is specified, instead of "[PATCH] Subject", the first line is formatted as "[PATCH N/M] Subject", unless you have only one patch\&. .SH "OPTIONS" .TP \-o|\-\-output\-directory Use to store the resulting files, instead of the current working directory\&. .TP \-n|\-\-numbered Name output in \fI[PATCH n/m]\fR format\&. .TP \-k|\-\-keep\-subject Do not strip/add \fI[PATCH]\fR from the first line of the commit log message\&. .TP \-s|\-\-signoff Add Signed\-off\-by: line to the commit message, using the committer identity of yourself\&. .TP \-c|\-\-check Display suspicious lines in the patch\&. The definition of \fIsuspicious lines\fR is currently the lines that has trailing whitespaces, and the lines whose indentation has a SP character immediately followed by a TAB character\&. .TP \-\-stdout This flag generates the mbox formatted output to the standard output, instead of saving them into a file per patch and implies \-\-mbox\&. .TP \-\-attach Create attachments instead of inlining patches\&. .SH "CONFIGURATION" You can specify extra mail header lines to be added to each message in the repository configuration as follows: .nf headers = "Organization: git\-foo\\n" .fi .SH "EXAMPLES" .TP git\-format\-patch \-k \-\-stdout R1\&.\&.R2 | git\-am \-3 \-k Extract commits between revisions R1 and R2, and apply them on top of the current branch using git\-am to cherry\-pick them\&. .TP git\-format\-patch origin Extract commits the current branch accumulated since it pulled from origin the last time in a patch form for e\-mail submission\&. .TP git\-format\-patch \-M \-B origin The same as the previous one, except detect and handle renames and complete rewrites intelligently to produce renaming patch\&. A renaming patch reduces the amount of text output, and generally makes it easier to review it\&. Note that the "patch" program does not understand renaming patch well, so use it only when you know the recipient uses git to apply your patch\&. .SH "SEE ALSO" \fBgit\-am\fR(1), \fBgit\-send\-email\fR(1) .SH "AUTHOR" Written by Junio C Hamano .SH "DOCUMENTATION" Documentation by Junio C Hamano and the git\-list \&. .SH "GIT" Part of the \fBgit\fR(7) suite