[Bug 5090] New: merge algorithm does a poor job minimizing conflicts
mercurial-bugs at selenic.com
mercurial-bugs at selenic.com
Tue Feb 9 11:05:25 UTC 2016
https://bz.mercurial-scm.org/show_bug.cgi?id=5090
Bug ID: 5090
Summary: merge algorithm does a poor job minimizing conflicts
Product: Mercurial
Version: unspecified
Hardware: PC
OS: Windows
Status: UNCONFIRMED
Severity: feature
Priority: wish
Component: Mercurial
Assignee: bugzilla at selenic.com
Reporter: rm at fb.com
CC: mercurial-devel at selenic.com
When the same "overlapping" changes are created on two different topological
branches, then a rebase occurs, mercurail does a poor job of minimzing the
resulting merge conflict. Specifically, the overlapping changes could, and I
would argue should, be omitted from the conflict, but currently they are
included in the conflict.
This is mercurial's behavior: This https://bpaste.net/show/6cdf08344d55
This is git's behavior: https://bpaste.net/show/bddf3b0b8448
Note that the "c" line is minimized out of the conflict in git, whereas it is
included within the conflict for Mercurial.
Extrapolated out, two topological branches that introduce a new file, with one
change between them will show the entire file in conflict, making the internal
merge essentially useless. This is a common issue when the committed version of
a patch has a small clean up compared to the submitted version, for example.
--
You are receiving this mail because:
You are on the CC list for the bug.
More information about the Mercurial-devel
mailing list