.\"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 git\-format\-patch [\-n | \-k] [\-o | \-\-stdout] [\-s] [\-c] [\-\-mbox] [\-\-diff\-options] [] .fi .SH "DESCRIPTION" Prepare each commit with its patch since head forked from head, one file per patch, for e\-mail submission\&. 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 that directory; otherwise in the current working directory\&. When \-n is specified, instead of "[PATCH] Subject", the first line is formatted as "[PATCH N/M] Subject", unless you have only one patch\&. When \-\-mbox is specified, the output is formatted to resemble UNIX mailbox format, and can be concatenated together for processing with applymbox\&. .SH "OPTIONS" .TP \-o|\-\-output\-directory Use to store the resulting files, instead of the current working directory\&. .TP \-n|\-\-numbered Name output in [PATCH n/m] format\&. .TP \-k|\-\-keep\-subject Do not strip/add [PATCH] from the first line of the commit log message\&. .TP \-a|\-\-author, \-d|\-\-date Output From: and Date: headers for commits made by yourself as well\&. Usually these are output only for commits made by people other than yourself\&. .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 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\&. .TP \-m|\-\-mbox Format the output files for closer to mbox format by adding a phony Unix "From " line, so they can be concatenated together and fed to git\-applymbox\&. Implies \-\-author and \-\-date\&. .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\&. .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