[darcs-users] Fwd: Towards a conflict-free revision control system.

Eric Kow kowey at darcs.net
Wed Jan 7 13:23:22 UTC 2009


Hi,

On Wed, Jan 07, 2009 at 13:43:58 +0100, Jean-Philippe Bernardy wrote:
> It seems that the problem of conflicting patches has been solved in darcs 2.x,
> but some time ago I had my very own "revolutionary" idea to solve the problem of
> conflicts in darcs 1.0:
> 
> There should be no conflicting patches!

Very interesting.  Thanks very much for sharing that!

> As part of a master-level project, two students of mine have implemented
> this idea in a prototype [1], and the report can be found here [2].

Ah-hah! I'm quite interested in seeing students working on darcs/camp
research and or implementation.  Good to see that such an exercise is
viable.

> We do not have the intention to develop the prototype any further (for
> the moment at least), but we thought you might be interested in at least taking
> a look at the work and the underlying ideas. We'll be happy to answer questions
> if you have any.

First (of two) questions: what, in a nutshell, does it mean not to have any
conflicts?  Clearly, there can be conflicting situations (i.e. two people edit
different parts of a file).  How roughly does your idea cope with them?  As you
can see, I haven't yet had the chance to read the paper, but was hoping for a
little bit more of a taster (now that I've had the teaser)

Second question.  The paper says:
| Darcs will flag this scenario as a conflict, i.e. it cannot represent such a
| merge. The result of a merge in Darcs is dependent on the order that the
| changes are applied, Darcs will try all possible “non conflicting” permutations
| of the changes which will result, in the worst case, in exponential complexity.

What does this mean, please?  I thought the whole point of the darcs approach
to conflicts is that it be completely independent of order (i.e. we cancel out
both patches).

As a more general remark, I was glad to see your reference to Lippe 2002 in the
paper, that is, to the idea of patch commutation expressed outside of the darcs
world (and pre-dating David's darcs work?).

I would love to see the darcs/camp community link up a bit more with
researchers working in this area, but (1) I don't know what "this area" is
and (2) I don't know who the right people are.  Do you have any thoughts on
what people we should be trying to talk to (names? sub-discliplines? research
topics?).  If I'm not mistaken, the current (darcs) assesment on pre-existing
work is that none of it deals with conflicts in any way, which doesn't help us
much.

I once tried to get some connections going between darcs folks and the
Libresource/so6 folks (notably, Pascal Molli <http://www.loria.fr/~molli>,
but that has not taken off yet. (Pascal Molli seems to be working on
collaborative distributed systems.  I guess an example application might be
text editors where different people are writing at the same time?)

Many thanks!

-- 
Eric Kow <http://www.nltg.brighton.ac.uk/home/Eric.Kow>
PGP Key ID: 08AC04F9
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 197 bytes
Desc: Digital signature
Url : http://lists.osuosl.org/pipermail/darcs-users/attachments/20090107/f07ba09b/attachment.pgp 


More information about the darcs-users mailing list