blob: df3ea3779be369ce0f935cfac945e79f08ff4b5a [file] [log] [blame]
Nguyễn Thái Ngọc Duyda0005b2015-03-11 16:32:45 -04001merge.conflictStyle::
Junio C Hamano42fc11c2008-11-26 11:11:18 -08002 Specify the style in which conflicted hunks are written out to
3 working tree files upon merge. The default is "merge", which
Ralf Wildenhues29b802a2008-12-09 07:23:51 +01004 shows a `<<<<<<<` conflict marker, changes made by one side,
5 a `=======` marker, changes made by the other side, and then
6 a `>>>>>>>` marker. An alternate style, "diff3", adds a `|||||||`
7 marker and the original text before the `=======` marker.
SZEDER Gábor3e6c0a32008-04-06 03:23:44 +02008
Junio C Hamano93e535a2011-03-23 23:48:24 -07009merge.defaultToUpstream::
10 If merge is called without any commit argument, merge the upstream
11 branches configured for the current branch by using their last
Matthieu Moya6d3bde2012-10-23 13:34:05 +020012 observed values stored in their remote-tracking branches.
Junio C Hamano93e535a2011-03-23 23:48:24 -070013 The values of the `branch.<current branch>.merge` that name the
14 branches at the remote named by `branch.<current branch>.remote`
15 are consulted, and then they are mapped via `remote.<remote>.fetch`
Matthieu Moya6d3bde2012-10-23 13:34:05 +020016 to their corresponding remote-tracking branches, and the tips of
Junio C Hamano93e535a2011-03-23 23:48:24 -070017 these tracking branches are merged.
18
Junio C Hamanof23e8de2011-05-06 12:27:05 -070019merge.ff::
Thomas Ackermann2de9b712013-01-21 20:17:53 +010020 By default, Git does not create an extra merge commit when merging
Junio C Hamanof23e8de2011-05-06 12:27:05 -070021 a commit that is a descendant of the current commit. Instead, the
22 tip of the current branch is fast-forwarded. When set to `false`,
Thomas Ackermann2de9b712013-01-21 20:17:53 +010023 this variable tells Git to create an extra merge commit in such
Junio C Hamanof23e8de2011-05-06 12:27:05 -070024 a case (equivalent to giving the `--no-ff` option from the command
25 line). When set to `only`, only such fast-forward merges are
26 allowed (equivalent to giving the `--ff-only` option from the
27 command line).
28
SZEDER Gáborfc0aa392015-05-27 23:52:23 +020029include::fmt-merge-msg-config.txt[]
SZEDER Gáborf5a84c32008-04-06 03:23:42 +020030
Jeff King2a2ac922008-04-30 13:23:55 -040031merge.renameLimit::
32 The number of files to consider when performing rename detection
33 during a merge; if not specified, defaults to the value of
34 diff.renameLimit.
35
Eyvind Bernhardsenf217f0e2010-07-02 21:20:47 +020036merge.renormalize::
Thomas Ackermann2de9b712013-01-21 20:17:53 +010037 Tell Git that canonical representation of files in the
Eyvind Bernhardsenf217f0e2010-07-02 21:20:47 +020038 repository has changed over time (e.g. earlier commits record
39 text files with CRLF line endings, but recent ones use LF line
Thomas Ackermann2de9b712013-01-21 20:17:53 +010040 endings). In such a repository, Git can convert the data
Eyvind Bernhardsenf217f0e2010-07-02 21:20:47 +020041 recorded in commits to a canonical form before performing a
42 merge to reduce unnecessary conflicts. For more information,
43 see section "Merging branches with differing checkin/checkout
44 attributes" in linkgit:gitattributes[5].
45
Junio C Hamano42fc11c2008-11-26 11:11:18 -080046merge.stat::
47 Whether to print the diffstat between ORIG_HEAD and the merge result
48 at the end of the merge. True by default.
49
SZEDER Gáborf5a84c32008-04-06 03:23:42 +020050merge.tool::
David Aguilarf35ec542013-01-27 16:52:26 -080051 Controls which merge tool is used by linkgit:git-mergetool[1].
52 The list below shows the valid built-in values.
53 Any other value is treated as a custom merge tool and requires
54 that a corresponding mergetool.<tool>.cmd variable is defined.
55
56include::mergetools-merge.txt[]
SZEDER Gáborf5a84c32008-04-06 03:23:42 +020057
58merge.verbosity::
59 Controls the amount of output shown by the recursive merge
60 strategy. Level 0 outputs nothing except a final error
61 message if conflicts were detected. Level 1 outputs only
62 conflicts, 2 outputs conflicts and file changes. Level 5 and
63 above outputs debugging information. The default is level 2.
Tom Russelloeee7f4a2016-06-08 00:35:06 +020064 Can be overridden by the `GIT_MERGE_VERBOSITY` environment variable.
SZEDER Gáborf5a84c32008-04-06 03:23:42 +020065
66merge.<driver>.name::
Ralf Wildenhues29b802a2008-12-09 07:23:51 +010067 Defines a human-readable name for a custom low-level
SZEDER Gáborf5a84c32008-04-06 03:23:42 +020068 merge driver. See linkgit:gitattributes[5] for details.
69
70merge.<driver>.driver::
71 Defines the command that implements a custom low-level
72 merge driver. See linkgit:gitattributes[5] for details.
73
74merge.<driver>.recursive::
75 Names a low-level merge driver to be used when
76 performing an internal merge between common ancestors.
77 See linkgit:gitattributes[5] for details.