diff mercurial/merge.py @ 22672:19903277f035

merge: use bid merge by default (BC) In most cases merges will work exactly as before. The only difference is in criss-cross merge situations where there is multiple ancestors. Instead of picking an more or less arbitrary ancestor, it will consider both ancestors and pick the best bids. Bid merge can be disabled with --config merge.preferancestor='!'.
author Mads Kiilerich <madski@unity3d.com>
date Wed, 01 Oct 2014 03:41:11 +0200
parents 6f63c47cbb86
children 16a46003b50c
line wrap: on
line diff
--- a/mercurial/merge.py	Wed Oct 01 03:40:51 2014 +0200
+++ b/mercurial/merge.py	Wed Oct 01 03:41:11 2014 +0200
@@ -779,7 +779,7 @@
                                 branchmerge, force,
                                 partial, acceptremote, followcopies)
 
-    else: # only when merge.preferancestor=* - experimentalish code
+    else: # only when merge.preferancestor=* - the default
         repo.ui.status(
             _("note: merging %s and %s using bids from ancestors %s\n") %
             (wctx, mctx, _(' and ').join(str(anc) for anc in ancestors)))
@@ -1048,7 +1048,7 @@
 
         p2 = repo[node]
         if pas[0] is None:
-            if repo.ui.config("merge", "preferancestor") == '*':
+            if repo.ui.config("merge", "preferancestor", '*') == '*':
                 cahs = repo.changelog.commonancestorsheads(p1.node(), p2.node())
                 pas = [repo[anc] for anc in (sorted(cahs) or [nullid])]
             else: