X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=Documentation%2Fgit-format-patch.txt;h=6fb94298516620e6991e82272a7e657a8296f7ca;hb=08e1812db1585c450bfe7f41e7106222346c88da;hp=a33d157b970740aa7d056ebb459350de89513a8b;hpb=679c7c56ed9f73db5892fe17ef9b67b84b0ca242;p=git.git diff --git a/Documentation/git-format-patch.txt b/Documentation/git-format-patch.txt index a33d157b9..6fb942985 100644 --- a/Documentation/git-format-patch.txt +++ b/Documentation/git-format-patch.txt @@ -9,30 +9,48 @@ git-format-patch - Prepare patches for e-mail submission SYNOPSIS -------- [verse] -'git-format-patch' [-n | -k] [-o | --stdout] [--thread] +'git-format-patch' [-k] [-o | --stdout] [--thread] [--attach[=] | --inline[=]] - [-s | --signoff] [] [--start-number ] + [-s | --signoff] [] + [-n | --numbered | -N | --no-numbered] + [--start-number ] [--numbered-files] [--in-reply-to=Message-Id] [--suffix=.] [--ignore-if-in-upstream] [--subject-prefix=Subject-Prefix] - [..] + [ | ] DESCRIPTION ----------- -Prepare each commit between and with its patch in +Prepare each commit with its patch in one file per commit, formatted to resemble UNIX mailbox format. -If .. is not specified, the head of the current working -tree is implied. For a more complete list of ways to spell - and , see "SPECIFYING REVISIONS" section in -gitlink:git-rev-parse[1]. - 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 +There are two ways to specify which commits to operate on. + +1. A single commit, , specifies that the commits leading + to the tip of the current branch that are not in the history + that leads to the to be output. + +2. Generic expression (see "SPECIFYING + REVISIONS" section in gitlink:git-rev-parse[1]) means the + commits in the specified range. + +A single commit, when interpreted as a +expression, means "everything that leads to that commit", but +if you write 'git format-patch ', the previous rule +applies to that command line and you do not get "everything +since the beginning of the time". If you want to format +everything since project inception to one commit, say "git +format-patch \--root " to make it clear that it is the +latter case. + +By default, each output file is numbered sequentially from 1, and uses the first line of the commit message (massaged for pathname safety) as -the filename. The names of the output files are printed to standard +the filename. With the --numbered-files option, the output file names +will only be numbers, without the first line of the commit appended. +The names of the output files are printed to standard output, unless the --stdout option is specified. If -o is specified, output files are created in . Otherwise @@ -48,8 +66,12 @@ reference. OPTIONS ------- +:git-format-patch: 1 include::diff-options.txt[] +-:: + Limits the number of patches to prepare. + -o|--output-directory :: Use to store the resulting files, instead of the current working directory. @@ -57,9 +79,17 @@ include::diff-options.txt[] -n|--numbered:: Name output in '[PATCH n/m]' format. +-N|--no-numbered:: + Name output in '[PATCH]' format. + --start-number :: Start numbering the patches at instead of 1. +--numbered-files:: + Output file names will be a simple number sequence + without the default first line of the commit appended. + Mutually exclusive with the --stdout option. + -k|--keep-subject:: Do not strip/add '[PATCH]' from the first line of the commit log message. @@ -107,7 +137,7 @@ include::diff-options.txt[] --suffix=.:: Instead of using `.patch` as the suffix for generated - filenames, use specifed suffix. A common alternative is + filenames, use specified suffix. A common alternative is `--suffix=.txt`. + Note that you would need to include the leading dot `.` if you @@ -117,14 +147,16 @@ not add any suffix. CONFIGURATION ------------- -You can specify extra mail header lines to be added to each -message in the repository configuration. Also you can specify -the default suffix different from the built-in one: +You can specify extra mail header lines to be added to each message +in the repository configuration, new defaults for the subject prefix +and file suffix, and number patches when outputting more than one. ------------ [format] headers = "Organization: git-foo\n" + subjectprefix = CHANGE suffix = .txt + numbered = auto ------------ @@ -141,6 +173,10 @@ git-format-patch origin:: not in the origin branch. For each commit a separate file is created in the current directory. +git-format-patch \--root origin:: + Extract all commits that lead to 'origin' since the + inception of the project. + git-format-patch -M -B origin:: The same as the previous one. Additionally, it detects and handles renames and complete rewrites intelligently to @@ -170,4 +206,3 @@ Documentation by Junio C Hamano and the git-list . GIT --- Part of the gitlink:git[7] suite -