Documentation / git-format-patch.txton commit Rip out merge-order and make "git log <paths>..." work again. (765ac8e)
   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] [-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
  64EXAMPLES
  65--------
  66
  67git-format-patch -k --stdout R1..R2 | git-am -3 -k::
  68        Extract commits between revisions R1 and R2, and apply
  69        them on top of the current branch using `git-am` to
  70        cherry-pick them.
  71
  72git-format-patch origin::
  73        Extract commits the current branch accumulated since it
  74        pulled from origin the last time in a patch form for
  75        e-mail submission.
  76
  77git-format-patch -M -B origin::
  78        The same as the previous one, except detect and handle
  79        renames and complete rewrites intelligently to produce
  80        renaming patch.  A renaming patch reduces the amount of
  81        text output, and generally makes it easier to review
  82        it.  Note that the "patch" program does not understand
  83        renaming patch well, so use it only when you know the
  84        recipient uses git to apply your patch.
  85
  86
  87See Also
  88--------
  89gitlink:git-am[1], gitlink:git-send-email[1]
  90
  91
  92Author
  93------
  94Written by Junio C Hamano <junkio@cox.net>
  95
  96Documentation
  97--------------
  98Documentation by Junio C Hamano and the git-list <git@vger.kernel.org>.
  99
 100GIT
 101---
 102Part of the gitlink:git[7] suite
 103