Re: Updated Issue 209 - support drop/modified conflict (monotone)

Markus Wanner <[email protected]>
Newsgroups gmane.comp.version-control.monotone.devel
Message-ID <[email protected]>
Hi,

On 06/05/2012 02:02 AM, Stephen Leake wrote:
> I moved the discussion of the 'dropped/modified' conflict to right after
> the missing root conflict (which is where 'die-die-die' is introduced in
> the manual), and it now mentions 'die-die-die'.

Sounds good, thanks.

>> As such, it doesn't help in the rare case of a "missing root
>> conflict", for example. More importantly, it's troublesome in cases
>> involving multiple edits conflicting with one delete. With "parallel"
>> modifications:
>>
>>     A        - file 'foo' exists
>>   / | \
>> M1 M2  D     - M1, M2: independent modifications to 'foo'
>>  \ /\ /      - D: deletion of 'foo'
>>   P  Q       - P, Q: merges, adding 'foo' under a new node-id
> 
> P is just a normal merge, while Q re-adds foo. Now it is a duplicate
> name conflict, with the resolution of keep one (with merged
> contents), delete the other.

Uh.. wait. I didn't proceed with merging P and Q. Those are separate
revisions which aren't necessarily merged directly. Consider a rename or
other modifications to the files involved before merging... The point is
that we now have two node-ids on the horizon, for something the users
considers to be the same file, but without mtn knowing. That's a problem
per se, IMO.

The immediate merge with the user explicitly dropping one file is what
he then can do to work around the short-comings of this approach, yes.
In that case, you've brought two conflicts to the users attention,
instead of none, as monotone currently would.

Anything involving renames after P or Q before merging won't even show
the inconsistency to the user.

>> In case of M1 and M2 being sequential edits, the user would have to
>> "undelete" the same file several times, consider this:
>>
>>     A
>>    / \
>>   M1  D
>>   | \ |
>>   M2  P
>>    \ /
>>     Q
>>
>> If the user chooses to keep the file in both, P and Q, he'd end up with
>> two 'foo' files.
> 
> merge to P is the only undelete; merge to Q has a duplicate name conflict.

Yeah, same issue: modify/delete conflict resolved by keeping (AKA
asymmetrically copying) the file turns into a name conflict.

> Right; I started trying to do that in the 'file sutures stuff'. Way too
> hard, for very little gain :).

Well, here we obviously disagree. But I haven't tried implementing
sutures (or resurrection). Where do I find your work on sutures?

Regards

Markus
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.