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