blob: e1343155fad7b2709d2f3700ea3d5b4c4d1a7a89 [file] [log] [blame]
Junio C Hamanoc21ab052009-10-31 04:03:551--commit::
2--no-commit::
3Perform the merge and commit the result. This option can
4be used to override --no-commit.
5+
6With --no-commit perform the merge but pretend the merge
7failed and do not autocommit, to give the user a chance to
8inspect and further tweak the merge result before committing.
Junio C Hamano610d1762008-11-28 06:27:139
Junio C Hamano11821ed2011-10-19 18:42:0910--edit::
Junio C Hamano7e590a12013-06-02 23:46:5211-e::
Junio C Hamano795a5a32012-02-02 01:36:3712--no-edit::
13Invoke an editor before committing successful mechanical merge to
14further edit the auto-generated merge message, so that the user
15can explain and justify the merge. The `--no-edit` option can be
16used to accept the auto-generated message (this is generally
Junio C Hamanoc5bd79e2014-01-27 21:31:2617discouraged).
18ifndef::git-pull[]
19The `--edit` (or `-e`) option is still useful if you are
20giving a draft message with the `-m` option from the command line
21and want to edit it in the editor.
22endif::git-pull[]
Junio C Hamano795a5a32012-02-02 01:36:3723+
24Older scripts may depend on the historical behaviour of not allowing the
25user to edit the merge log message. They will see an editor opened when
26they run `git merge`. To make it easier to adjust such scripts to the
27updated behaviour, the environment variable `GIT_MERGE_AUTOEDIT` can be
28set to `no` at the beginning of them.
Junio C Hamano11821ed2011-10-19 18:42:0929
Junio C Hamanoc21ab052009-10-31 04:03:5530--ff::
Junio C Hamanof54f08e2012-02-27 07:49:1931When the merge resolves as a fast-forward, only update the branch
32pointer, without creating a merge commit. This is the default
33behavior.
34
Junio C Hamanoc21ab052009-10-31 04:03:5535--no-ff::
Junio C Hamanof54f08e2012-02-27 07:49:1936Create a merge commit even when the merge resolves as a
Junio C Hamano778a3412013-03-28 23:24:3037fast-forward. This is the default behaviour when merging an
38annotated (and possibly signed) tag.
Junio C Hamanof54f08e2012-02-27 07:49:1939
40--ff-only::
41Refuse to merge and exit with a non-zero status unless the
42current `HEAD` is already up-to-date or the merge can be
43resolved as a fast-forward.
Junio C Hamano6d76d612008-05-09 05:46:0844
Junio C Hamano3b4609d2010-09-30 00:04:3445--log[=<n>]::
Junio C Hamanoc21ab052009-10-31 04:03:5546--no-log::
Junio C Hamano6d76d612008-05-09 05:46:0847In addition to branch names, populate the log message with
Junio C Hamano3b4609d2010-09-30 00:04:3448one-line descriptions from at most <n> actual commits that are being
49merged. See also linkgit:git-fmt-merge-msg[1].
Junio C Hamanoc21ab052009-10-31 04:03:5550+
51With --no-log do not list one-line descriptions from the
52actual commits being merged.
Junio C Hamano6d76d612008-05-09 05:46:0853
Junio C Hamano6d76d612008-05-09 05:46:0854
Junio C Hamanoc21ab052009-10-31 04:03:5555--stat::
56-n::
57--no-stat::
58Show a diffstat at the end of the merge. The diffstat is also
59controlled by the configuration option merge.stat.
60+
61With -n or --no-stat do not show a diffstat at the end of the
62merge.
Junio C Hamano1b50ce92007-10-03 12:05:5363
Junio C Hamano3901ffb2006-06-26 23:46:5364--squash::
Junio C Hamanoc21ab052009-10-31 04:03:5565--no-squash::
Junio C Hamano3901ffb2006-06-26 23:46:5366Produce the working tree and index state as if a real
Junio C Hamano9f10ed32009-05-26 08:38:5267merge happened (except for the merge information),
68but do not actually make a commit or
Junio C Hamano3901ffb2006-06-26 23:46:5369move the `HEAD`, nor record `$GIT_DIR/MERGE_HEAD` to
70cause the next `git commit` command to create a merge
71commit. This allows you to create a single commit on
72top of the current branch whose effect is the same as
73merging another branch (or more in case of an octopus).
Junio C Hamanoc21ab052009-10-31 04:03:5574+
75With --no-squash perform the merge and commit the result. This
76option can be used to override --squash.
Junio C Hamano1b50ce92007-10-03 12:05:5377
Junio C Hamanoeb415992008-06-08 22:49:4778-s <strategy>::
79--strategy=<strategy>::
Junio C Hamano1a4e8412005-12-27 08:17:2380Use the given merge strategy; can be supplied more than
81once to specify them in the order they should be tried.
82If there is no `-s` option, a built-in list of strategies
Junio C Hamano1aa40d22010-01-21 17:46:4383is used instead ('git merge-recursive' when merging a single
84head, 'git merge-octopus' otherwise).
Junio C Hamanoc21ab052009-10-31 04:03:5585
Junio C Hamanob04bb3f2010-04-14 14:07:3686-X <option>::
87--strategy-option=<option>::
88Pass merge strategy specific option through to the merge
89strategy.
90
Junio C Hamanoedf80bd2013-04-05 22:14:3691--verify-signatures::
92--no-verify-signatures::
93Verify that the commits being merged have good and trusted GPG signatures
94and abort the merge in case they do not.
95
Junio C Hamanoc21ab052009-10-31 04:03:5596--summary::
97--no-summary::
98Synonyms to --stat and --no-stat; these are deprecated and will be
99removed in the future.
100
Junio C Hamanoea90ab32010-03-15 20:32:55101ifndef::git-pull[]
Junio C Hamanoc21ab052009-10-31 04:03:55102-q::
103--quiet::
Junio C Hamanod2c978f2011-03-20 19:42:22104Operate quietly. Implies --no-progress.
Junio C Hamanoc21ab052009-10-31 04:03:55105
106-v::
107--verbose::
108Be verbose.
Junio C Hamanod2c978f2011-03-20 19:42:22109
110--progress::
111--no-progress::
112Turn progress on/off explicitly. If neither is specified,
113progress is shown if standard error is connected to a terminal.
114Note that not all merge strategies may support progress
115reporting.
116
Junio C Hamanoea90ab32010-03-15 20:32:55117endif::git-pull[]