[darcs-users] Interesting article about how Darcs does the merge better than the most other DVCS
Ganesh Sittampalam
ganesh at earth.li
Sat Apr 30 17:44:47 UTC 2011
Yes, I don't particularly agree with characterising the difference as
"consistency" versus "inconsistency".
However, it is the case that in this particular way, darcs guarantees a
stronger property than git. I think that property is something that at
least some of our users value. Also, darcs takes the property a step
further with its support for cherry-picking, which is implemented via
undoing merges that might never have happened ("commuting"), which is
another property that I think most of our users value a lot.
On 30/04/2011 12:48, Michael Olney wrote:
> Let's suppose that Darcs does produce the same result no matter what
> order patches are merged in. That would not necessarily imply that it
> is more or less consistent than Git. For a start, the term
> "consistent" has to be defined. The arrows in Git's history DAG aren't
> patches, so the manner in which such a notion would defined for both
> systems is not clear to me.
>
> Git is a snapshotting system that simply merges a set of
> representative changes between a base snapshot and two derived
> snapshots. The history DAG is, so far as I can tell, just an
> abbreviated command history that gives hints to the merging process.
> If you bare that in mind none of this is "inconsistent".
>
> Cases like the one cited in the article are a problem (and are well
> worth pointing out) because if they occur, the user probably didn't
> mean them to. In any given system, we'd probably like to warn users of
> any such hint that they might be making a mistake. However, the
> presence or absence of these cases alone doesn't seem to tell us much
> of significance about the relative merits of different systems.
>
> On 30 April 2011 16:39, Ganesh Sittampalam <ganesh at earth.li> wrote:
>> Darcs always produces the same merge result, whatever order you do
>> merges in. There's no formal proof of this from the ground up, unless
>> there's one for Camp yet, but our test suite does contain randomised
>> tests of this property for 3 patches, and there is a semi-formal proof
>> kicking around that if this property is true for 3 patches, it's true
>> for any number of patches.
>>
>> Known exceptions are the "setpref" patches which are buggy, and also by
>> design if there's a conflict the marks you get in your working copy
>> aren't consistent - but the "pristine" repository should be consistent.
>>
>> On 30/04/2011 07:15, Michael Olney wrote:
>>> The article points out a case where Git can produce multiple results
>>> (which IMO would ideally trigger a manual resolution), but does not
>>> demonstrate that Darcs does any better in general. Perhaps Darcs does
>>> produce more "consistent" patches than Git does. As far as I know that
>>> is yet to be satisfactorily stated let alone demonstrated to be true.
>>>
>>> On 17 April 2011 21:09, Sven Strittmatter <weltraumschaf at googlemail.com> wrote:
>>>> Hi *,
>>>>
>>>> http://r6.ca/blog/20110416T204742Z.html
>>>>
>>>> -Sven
>>>> _______________________________________________
>>>> darcs-users mailing list
>>>> darcs-users at darcs.net
>>>> http://lists.osuosl.org/mailman/listinfo/darcs-users
>>>>
>>> _______________________________________________
>>> darcs-users mailing list
>>> darcs-users at darcs.net
>>> http://lists.osuosl.org/mailman/listinfo/darcs-users
>>>
>>
>> _______________________________________________
>> darcs-users mailing list
>> darcs-users at darcs.net
>> http://lists.osuosl.org/mailman/listinfo/darcs-users
>>
> _______________________________________________
> darcs-users mailing list
> darcs-users at darcs.net
> http://lists.osuosl.org/mailman/listinfo/darcs-users
>
More information about the darcs-users
mailing list