tech-repository archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: is the proof in the pudding?



On Mon, Jul 28, 2008 at 05:02:57PM +0200, Adam Hamsik wrote:
> I think that before we try to import our tree to new VCS. We should
> make a basic candidate list, because we don't need to spend time and effort
> with converting out tree to e.g. monotone when we clearly know that we will
> never import such tool into our base system. For start it would be good if
> every VCS partisan here try to fill form like this[1] and we can then
> decide which tools can be useable.

I've been assembling notes of roughly this form, although there are a
lot of points in my notes marked ? because I don't know that much
about some of the systems.

The list of potentially serious contenders (AFAIK) is:

   svn, svk, git, mercurial, monotone, bazaar, codeville

(darcs is a non-starter.)

The short answer is that currently none of them is suitable. 

svn has scalability/resource usage problems, weird branch/tag
semantics, and has in the past earned a bad reputation for
reliability. Also it doesn't really offer a whole lot over CVS.

svk shares all or nearly all of svn's problems and would also require
importing perl into base.

git doesn't handle subtrees, uses hash codes instead of version
numbers, can't check out a tree without cloning the full history, and
has kind of a messy install with tons of executables.

mercurial doesn't handle subtrees, uses hash codes instead of version
numbers, can't check out a tree without cloning the full history, and
would require importing python into base. Its branch support also may
not be adequate.

monotone doesn't handle subtrees, uses hash codes instead of version
numbers (though it apparently can preserve the old CVS version
numbers) and apparently requires boost. There are also some concerns
about performance/scalability.

bazaar I don't know much about yet, but it would require importing
python, and because it's distributed I assume it uses hash codes
instead of version numbers.

codeville I know even less about, but it would also require importing
python.


Note that all of these also have various advantages, but that doesn't
do much good as long as there are showstopper-level issues.

But also note that successfully converting the repository to *any* of
the changeset-based systems would be a big step forward.

-- 
David A. Holland
dholland%netbsd.org@localhost


Home | Main Index | Thread Index | Old Index