> BTW, for the archives of patches and pristines it might be a good
> idea to (eventually) go to git as the basic backend.
No. Darcs-Git will never work really well.
Some minor flaws aside, the Darcs repo format is designed for Darcs.
It contains the information that Darcs needs to operate efficiently,
such as for example patches in commuted form.
What Darcs-Git does is computing this information on the fly. While I
have a few cunning ideas to make this as efficient as possible, using
Darcs on Git repositories will never be as convenient as using Darcs
on native repositories (especially after we implement the changes we
are planning to the native format).
> Linus is a certified genius, and Tom Lord is basing his v2 Arch
> architecture (aka revc) on it
Git is a brilliant design *for Linus' needs*. You see, Linus has
access to two very powerful merge algorithms (``please resubmit this
against 2.6.15'' and Andrew Morton) that are not easily accessible to
mere mortals. Because of that, Git only implements one merge
algorithm, namely 3-way merge sensitive to whole-tree history (just
like Monotone and Arch, by the way, the fancy talk about ``star-merge''
notwithstanding). While miles ahead from basic 3-way merge (as in CVS
and Subversion), this is not something that allows for precise
cherry-picking.
In order to do precise cherry-picking, you need to keep more informa-
tion than what is in Git; intuitively, you need to know the origin of
every line in the repository. This information is what is contained
explicitly in Codeville's weaves, and implicitly in Darcs' patches;
and this information needs to be recomputed on the fly by Darcs-Git.
In the light of the above, you might wonder why I'm working on
Darcs-Git. There are two reasons.
One is that I'm interested in restructuring Darcs in a more modular
fashion, and the Git backend is a good excuse to do so. The second is
that Git's is a nice simple format for keeping revision control
information, and I'd like to see it become the standard interchange
format for transferring data between revision control systems,
hopefully making hacks such as Tailor obsolete. (Lest anyone be
offended: Tailor is a marvellous hack. But I'd still like to replace
it by what I believe is The Right Way to data interchange.)
Juliusz
_______________________________________________
darcs-users mailing list
[email protected]
http://www.abridgegame.org/mailman/listinfo/darcs-users