[PATCH 1 of 6 bid merge v2] ancestors: return all common ancestor heads - not just the most distant

Mads Kiilerich mads at kiilerich.com
Thu Apr 17 10:11:35 CDT 2014


On 04/17/2014 05:03 PM, Matt Mackall wrote:
> On Mon, 2014-04-07 at 02:18 +0200, Mads Kiilerich wrote:
>> # HG changeset patch
>> # User Mads Kiilerich <madski at unity3d.com>
>> # Date 1393278134 -3600
>> #      Mon Feb 24 22:42:14 2014 +0100
>> # Node ID 6ab1d2340403e890b0719b6b8c6771171cf55204
>> # Parent  12f161f08d744f0e4b6eef9c905670afb5c24dd4
>> ancestors: return all common ancestor heads - not just the most distant
> We're going to need the old single-ancestor merge algorithm around for a
> few releases. That algorithm needs to choose a "best" ancestor and the
> heuristic it uses for that is the one you're deleting. So this approach
> is simply not going to work. We'll probably need to add another function
> or flag.
>
> (In fact, we're probably always going to need an algorithm that gives us
> a single "best" ancestor.)

Do you consider it essential to preserve exactly the existing "best" 
heuristics?

I would suggest something like 
http://markmail.org/message/myqbmm6gsfcgw6am (and the previous patch) 
for a more transparent and manageable way of deciding which common 
ancestors head is "best".

/Mads


More information about the Mercurial-devel mailing list