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