Documentation / git-am.txton commit Document 'git-blame --incremental' (57e7a0a)
   1git-am(1)
   2=========
   3
   4NAME
   5----
   6git-am - Apply a series of patches from a mailbox
   7
   8
   9SYNOPSIS
  10--------
  11[verse]
  12'git-am' [--signoff] [--dotest=<dir>] [--utf8 | --no-utf8] [--binary] [--3way]
  13         [--interactive] [--whitespace=<option>] <mbox>...
  14'git-am' [--skip | --resolved]
  15
  16DESCRIPTION
  17-----------
  18Splits mail messages in a mailbox into commit log message,
  19authorship information and patches, and applies them to the
  20current branch.
  21
  22OPTIONS
  23-------
  24--signoff::
  25        Add `Signed-off-by:` line to the commit message, using
  26        the committer identity of yourself.
  27
  28--dotest=<dir>::
  29        Instead of `.dotest` directory, use <dir> as a working
  30        area to store extracted patches.
  31
  32--keep::
  33        Pass `-k` flag to `git-mailinfo` (see gitlink:git-mailinfo[1]).
  34
  35--utf8::
  36        Pass `-u` flag to `git-mailinfo` (see gitlink:git-mailinfo[1]).
  37        The proposed commit log message taken from the e-mail
  38        are re-coded into UTF-8 encoding (configuration variable
  39        `i18n.commitencoding` can be used to specify project's
  40        preferred encoding if it is not UTF-8).
  41+
  42This was optional in prior versions of git, but now it is the
  43default.   You could use `--no-utf8` to override this.
  44
  45--no-utf8::
  46        Do not pass `-u` flag to `git-mailinfo` (see
  47        gitlink:git-mailinfo[1]).
  48
  49--binary::
  50        Pass `--allow-binary-replacement` flag to `git-apply`
  51        (see gitlink:git-apply[1]).
  52
  53--3way::
  54        When the patch does not apply cleanly, fall back on
  55        3-way merge, if the patch records the identity of blobs
  56        it is supposed to apply to, and we have those blobs
  57        locally.
  58
  59--skip::
  60        Skip the current patch.  This is only meaningful when
  61        restarting an aborted patch.
  62
  63--whitespace=<option>::
  64        This flag is passed to the `git-apply` program that applies
  65        the patch.
  66
  67--interactive::
  68        Run interactively, just like git-applymbox.
  69
  70--resolved::
  71        After a patch failure (e.g. attempting to apply
  72        conflicting patch), the user has applied it by hand and
  73        the index file stores the result of the application.
  74        Make a commit using the authorship and commit log
  75        extracted from the e-mail message and the current index
  76        file, and continue.
  77
  78DISCUSSION
  79----------
  80
  81When initially invoking it, you give it names of the mailboxes
  82to crunch.  Upon seeing the first patch that does not apply, it
  83aborts in the middle, just like 'git-applymbox' does.  You can
  84recover from this in one of two ways:
  85
  86. skip the current one by re-running the command with '--skip'
  87  option.
  88
  89. hand resolve the conflict in the working directory, and update
  90  the index file to bring it in a state that the patch should
  91  have produced.  Then run the command with '--resolved' option.
  92
  93The command refuses to process new mailboxes while `.dotest`
  94directory exists, so if you decide to start over from scratch,
  95run `rm -f .dotest` before running the command with mailbox
  96names.
  97
  98
  99SEE ALSO
 100--------
 101gitlink:git-applymbox[1], gitlink:git-applypatch[1], gitlink:git-apply[1].
 102
 103
 104Author
 105------
 106Written by Junio C Hamano <junkio@cox.net>
 107
 108Documentation
 109--------------
 110Documentation by Petr Baudis, Junio C Hamano and the git-list <git@vger.kernel.org>.
 111
 112GIT
 113---
 114Part of the gitlink:git[7] suite
 115