]> git.ipfire.org Git - thirdparty/git.git/blame - Documentation/git-am.txt
git-commit: do not fail to print the diffstat even if there is a file named HEAD
[thirdparty/git.git] / Documentation / git-am.txt
CommitLineData
42e2cba2 1git-am(1)
05625af3 2=========
42e2cba2
PB
3
4NAME
5----
6git-am - Apply a series of patches in a mailbox
7
8
9SYNOPSIS
10--------
353ce815 11[verse]
8273c79a
JH
12'git-am' [--signoff] [--dotest=<dir>] [--utf8] [--binary] [--3way]
13 [--interactive] [--whitespace=<option>] <mbox>...
087b6742 14'git-am' [--skip | --resolved]
42e2cba2
PB
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
baa720f5
JH
22OPTIONS
23-------
24--signoff::
25 Add `Signed-off-by:` line to the commit message, using
26 the committer identity of yourself.
42e2cba2 27
baa720f5
JH
28--dotest=<dir>::
29 Instead of `.dotest` directory, use <dir> as a working
30 area to store extracted patches.
42e2cba2 31
baa720f5 32--utf8, --keep::
68e37f84 33 Pass `-u` and `-k` flags to `git-mailinfo` (see
baa720f5
JH
34 gitlink:git-mailinfo[1]).
35
087b6742
JH
36--binary::
37 Pass `--allow-binary-replacement` flag to `git-apply`
38 (see gitlink:git-apply[1]).
39
baa720f5
JH
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
8273c79a
JH
50--whitespace=<option>::
51 This flag is passed to the `git-apply` program that applies
52 the patch.
53
baa720f5
JH
54--interactive::
55 Run interactively, just like git-applymbox.
56
087b6742
JH
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.
baa720f5
JH
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
087b6742
JH
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
1e2ccd3a 78 have produced. Then run the command with '--resolved' option.
baa720f5
JH
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.
42e2cba2
PB
84
85
86SEE ALSO
87--------
8273c79a 88gitlink:git-applymbox[1], gitlink:git-applypatch[1], gitlink:git-apply[1].
42e2cba2
PB
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
42e2cba2
PB
99GIT
100---
101Part of the gitlink:git[7] suite
102