[darcs-users] request for clear docs for 'push' and conflicts

Juliusz Chroboczek jch at pps.jussieu.fr
Thu Oct 28 16:59:43 UTC 2004


> I really think the CVS behavior makes more sense here: With CVS
> I must resolve conflicts with the remote repo before committing. 

But Darcs is decentralised (you can do a merge between remote
repositories) and asynchronous (you can perform a merge by e-mail).

CVS is centralised, so there's no problem.  Arch is synchronous (you
cannot commit by e-mail), so it (conceptually) grabs a lock until you
have finished with the conflict.  But Darcs cannot do either of that
-- with an asynchronous system, an arbitrary amount of time can pass
between the conflict and the fix.

(Think, for example, of David being on vacation, Alice and Bob send
patches in simultaneously and go off on vacation.  A week later David
comes back, applies Alice's and Bob's patches.  How is he to deal with
the situation if Alice and Bob are both away and cannot submit
non-conflicting versions of their patches?)

The problem of decentralised asynchronous updates is a tough one, and
many have tried to solve it.  I believe taht Coda and Darcs are the
only successful solutions in existence, although I'd be glad to hear
of more.

                                        Juliusz




More information about the darcs-users mailing list