[darcs-users] Single developer using multiple workstations
Tommy Pettersson
ptp at lysator.liu.se
Tue May 15 20:17:01 UTC 2007
On Mon, May 14, 2007 at 11:49:47AM +0100, Eric S Fraga wrote:
> However, there are potential problems with having a darcs repository
> under unison control as well, depending on the versions of darcs on
> the different computers. If you can ensure that these computers will
> all have the exact same version of darcs, then things might go
> fine. However, if they might have different versions, problems can
> arise with inconsistencies (not sure why).
The problem is in the way a darcs repository changes when you
add patches to it (or remove patches from it). A key feature of
darcs is that the order in which you apply patches does not
matter. But this doesn't happen magically; darcs _does_ keep the
patches in some order, but can reorders them when needed. When
darcs reorders patches it also (and this is the core of the
problem) rewrites them, that is, the very contents of the
patches _change_. So two "identical" repos can have different
ordered, and thus slightly different looking, patches, even if
their "sum" (the working dir) is exactly the same.
As long as only one repo has changed, two repos can be synced by
making the other one exactly the same as the first one (a
complete copy or replace, sort of). But if both repos have
changed, a program like unison wouldn't know how to join the
changes, because that requires reordering and rewriting of
patches in accordance with darcs' patch algebra.
--
Tommy Pettersson <ptp at lysator.liu.se>
More information about the darcs-users
mailing list