1git-am(1) 2========= 3 4NAME 5---- 6git-am - Apply a series of patches in a mailbox 7 8 9SYNOPSIS 10-------- 11[verse] 12'git-am' [--signoff] [--dotest=<dir>] [--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--utf8, --keep:: 33 Pass `-u` and `-k` flags to `git-mailinfo` (see 34 gitlink:git-mailinfo[1]). 35 36--binary:: 37 Pass `--allow-binary-replacement` flag to `git-apply` 38 (see gitlink:git-apply[1]). 39 40--3way:: 41 When the patch does not apply cleanly, fall back on 42 3-way merge, if the patch records the identity of blobs 43 it is supposed to apply to, and we have those blobs 44 locally. 45 46--skip:: 47 Skip the current patch. This is only meaningful when 48 restarting an aborted patch. 49 50--whitespace=<option>:: 51 This flag is passed to the `git-apply` program that applies 52 the patch. 53 54--interactive:: 55 Run interactively, just like git-applymbox. 56 57--resolved:: 58 After a patch failure (e.g. attempting to apply 59 conflicting patch), the user has applied it by hand and 60 the index file stores the result of the application. 61 Make a commit using the authorship and commit log 62 extracted from the e-mail message and the current index 63 file, and continue. 64 65DISCUSSION 66---------- 67 68When initially invoking it, you give it names of the mailboxes 69to crunch. Upon seeing the first patch that does not apply, it 70aborts in the middle, just like 'git-applymbox' does. You can 71recover from this in one of two ways: 72 73. skip the current one by re-running the command with '--skip' 74 option. 75 76. hand resolve the conflict in the working directory, and update 77 the index file to bring it in a state that the patch should 78 have produced. Then run the command with '--resolved' option. 79 80The command refuses to process new mailboxes while `.dotest` 81directory exists, so if you decide to start over from scratch, 82run `rm -f .dotest` before running the command with mailbox 83names. 84 85 86SEE ALSO 87-------- 88gitlink:git-applymbox[1], gitlink:git-applypatch[1], gitlink:git-apply[1]. 89 90 91Author 92------ 93Written by Junio C Hamano <junkio@cox.net> 94 95Documentation 96-------------- 97Documentation by Petr Baudis, Junio C Hamano and the git-list <git@vger.kernel.org>. 98 99GIT 100--- 101Part of the gitlink:git[7] suite 102