git-am(1)
=========

NAME
----
git-am - Apply a series of patches in a mailbox


SYNOPSIS
--------
[verse]
'git-am' [--signoff] [--dotest=<dir>] [--utf8] [--binary] [--3way] <mbox>...
'git-am' [--skip | --resolved]

DESCRIPTION
-----------
Splits mail messages in a mailbox into commit log message,
authorship information and patches, and applies them to the
current branch.

OPTIONS
-------
--signoff::
	Add `Signed-off-by:` line to the commit message, using
	the committer identity of yourself.

--dotest=<dir>::
	Instead of `.dotest` directory, use <dir> as a working
	area to store extracted patches.

--utf8, --keep::
	Pass `-u` and `-k` flags to `git-mailinfo` (see
	gitlink:git-mailinfo[1]).

--binary::
	Pass `--allow-binary-replacement` flag to `git-apply`
	(see gitlink:git-apply[1]).

--3way::
	When the patch does not apply cleanly, fall back on
	3-way merge, if the patch records the identity of blobs
	it is supposed to apply to, and we have those blobs
	locally.

--skip::
	Skip the current patch.  This is only meaningful when
	restarting an aborted patch.

--interactive::
	Run interactively, just like git-applymbox.

--resolved::
	After a patch failure (e.g. attempting to apply
	conflicting patch), the user has applied it by hand and
	the index file stores the result of the application.
	Make a commit using the authorship and commit log
	extracted from the e-mail message and the current index
	file, and continue.

DISCUSSION
----------

When initially invoking it, you give it names of the mailboxes
to crunch.  Upon seeing the first patch that does not apply, it
aborts in the middle, just like 'git-applymbox' does.  You can
recover from this in one of two ways:

. skip the current one by re-running the command with '--skip'
  option.

. hand resolve the conflict in the working directory, and update
  the index file to bring it in a state that the patch should
  have produced.  Then run the command with '--resolved' option.

The command refuses to process new mailboxes while `.dotest`
directory exists, so if you decide to start over from scratch,
run `rm -f .dotest` before running the command with mailbox
names.


SEE ALSO
--------
gitlink:git-applymbox[1], gitlink:git-applypatch[1].


Author
------
Written by Junio C Hamano <junkio@cox.net>

Documentation
--------------
Documentation by Petr Baudis, Junio C Hamano and the git-list <git@vger.kernel.org>.

GIT
---
Part of the gitlink:git[7] suite

