Subject: Re: mono experience cutting to subversion
To: NetBSD-current Discussion List <current-users@NetBSD.ORG>
From: Pavel Cahyna <pavel.cahyna@st.mff.cuni.cz>
List: current-users
Date: 02/11/2005 23:57:21
On Fri, 11 Feb 2005 17:19:58 -0500, Greg A. Woods wrote:
> FYI, CVSup also has one other really incredibly important and
> fantastically cool feature that makes its use HIGHLY desirable for any
> and all third-party code users such as myself:
>
> CVSup is able to merge new deltas and tags from the server with
> deltas and tags added locally on the client machine. This makes it
> possible for the client to check local modifications into his
> repository without their being obliterated by subsequent updates from
> the server.
>
> This means folks such as myself can use our local copy of the CVS
> repository directly to track our own local changes and even create our
> own local branches without having to use the horribly inefficient and
> tricky "cvs import" tricks.
Yes, CVSup is a really good software. The feature you mentioned is
really very important - I can't imagine how would I manage my local
changes to the NetBSD sources without it, even if they are quite small.
> CVSup also provides similarly highly efficient ways for people to track
> a given branch just as they might do with an anoncvs checkout, but
> without all the overhead of running a full, shared, anon. CVS server.
>
>
> The only other reasonably mature version tracking system I know of that
> would seem to be directly suitable to meeting the needs of NetBSD, and
> at the same time provide this ultra-cool local modification support ala
> CVSup, is BitKeeper.
>
> Monotone should be able to do this too, IIUC, and Monotone will
> eliminate the redistribution issues since it inherently propogates
> changesets and is pretty much network protocol agnostic, but of course
> Monotone is still under development.
>
> DARCS is another one that's entirely changeset based, but I know even
> less about how well it might work for a project like NetBSD.
>
> I don't think Subversion comes even close to meeting any of these needs.
The feature you mention isn't supported by CVS - it's implemented by CVSup
"above" CVS. How is SVN worse than that? While it also don't have this
feature, it is possible to implement it with additional software - that's
what SVK does. So the SVN + SVK combination is equivalent to CVS + CVSup.
Except that with changeset support in SVN and the good merging support in
SVK, managing local branches should be much easier than with CVSup, which
still suffers from CVS limitations.
Bye Pavel