hi, i am struggling to believe that darcs doesn't have cvs-style branches, but i think i am almost there.
[the setting] i want to have a central repository for a number of
developers and anonymous users that contains all the development
stages of a software project. some of these stages obviously are
conflicting with each other, and merging only makes sense along the
tree branches.
[the cvs way] the global set of all patches are arranged in a tree, and
although this global patch set resides in one repository, consistency
is attempted along the branches only.
[the darcs way] a repository is a patch set without any internal
structure beyond that naturally imposed on it by the patch algebra.
this leaves us two options:
a) tags following a suitable naming convention may be used to create
the illusion of a tree structure. (this is what should be done
in cvs anyway, because the internal revision numbers are a little
impractical useless.) this leads to a very bizarre working copy
in the central repo, but as long as nobody makes a mistake it'll
be fine.
b) the central repository is a growing directory containing
overlapping repositories, each representing one branch. for each
new branch, a new repo is forked off the parent branch in a fresh
sub-directory using 'darcs get' on the local file system. which
is not a space problem, because hard links are used to keep the
disk usage near optimal.
[my questions]
1. Is the b) the recommended way of doing it? I think I could get
used to it, although I think it's really bizarre. (-:
2. Is there anything wrong with option a)? I am interested in its
technical errors as well as questions of elegance and style. (I
am aware that 'darcs get' shouldn't be called there without an
explicit tag name.)
3. Is there any other way to do branches?
I am really starting to enjoy this. (:
thanks a lot,
m.
signature.asc
Description: Digital signature
_______________________________________________ darcs-users mailing list [email protected] http://www.abridgegame.org/mailman/listinfo/darcs-users
