Conversion to SVN

Ulrich Spörlein uqs at FreeBSD.org
Fri Oct 7 22:17:38 UTC 2011


On Fri, 2011-10-07 at 22:15:57 +0100, Gavin Atkinson wrote:
> On Fri, 7 Oct 2011, Rene Ladan wrote:
> > Op 07-10-2011 16:13, Ulrich Sp?rlein schreef:
> > > it looks like I'm not the only one thinking about moving the doc/www
> > > repos from CVS to SVN, and other people actually have not only thought
> > > about it but already played around with conversions.
> > > 
> > > gavin did some preliminary conversions and it turns out that we end up
> > > with ~50k revisions and about 650MB of changes (IIRC). There are also
> > > lots of weird branches, so perhaps we could size that down a bit.
> > > 
> > > What I, personally, would like to see is us using the same svn repo as
> > > src. That means we would have to stop svn.freebsd.org for the
> > > conversion, turn off email sending, dump 50k revisions into it (under
> > > /doc and /www perhaps? where should branches/tags end up?), then turn
> > > everything back on.
> 
> The more I think about this, the less I like the idea.  I really don't 
> like the idea of having revision numbers which no longer increase with 
> commit date (i.e. having revisions 1-250,000 correspond to the existing 
> src tree, 250,000-300,000 being the imported doc tree, and then the 
> combined repo being 300,001 onwards).
> 
> I think it is much nicer to have two separate repositories, in which 
> revision 1 corresponds to the start of each tree.  I don't see any real 
> advantage in combining them now, to be honest.
> 
> Combining doc and www more closely, however, I do see the benefit of.  
> However, currently we don't (and have no need to) branch the www tree with 
> each release.  If we combine them, we would be - even though we probably 
> don't wish to.

You don't need a new repo to branch stuff in svn. Remember that it's
basically a file-system. We currently branch /head to /stable/9 in the
src repo. That doesn't change anything under /user or /projects. We
could have /doc and /www in a doc repo and branch it by doing svn cp
/doc /stable/8 (/doc could also be called /head just like in src).
Again, this would not branch /www in any way or form.

> > > I haven't really thought that through to the end, but setting up a
> > > separate svn repo just seems silly to me and is another administrative
> > > overhead. ports might be special enough (due to sheer size) to justify a
> > > separate repo/machine, but not doc/www.
> 
> It may actually be easier, as all the infrastructure from the src repo can 
> possibly be reused easily.  Combining them may be harder as more work 
> would presumably need to be done on sorting out ACLs for src and doc 
> committers, etc?

Not really, it's just a couple of paths more. Every doc and ports
committer has write access to parts of the src tree, otherwise they
couldn't update the committers.dot or calender.freebsd entries
themselves.

So it really is more work to do this for two repos, or you just
reference the same repo-config for both of them. Not sure how that
information is stored in subversion and of course it would mean that you
can't have /head in doc-svn and /head in src-svn.

It also makes "svn paths" non-unique. stable/8 could then be a reference
to doc-svn or src-svn ...

> > If possible, I would like to have one SVN repository for both src and
> > doc/www so that user and project directories can be shared so that there
> > is only one /user/rene.
> 
> An argument could be made that by keeping them separate then it reduces 
> the overhead for people wishing to contribute.  People wanting to commit a 
> kernel patch need a copy of the website on their disk just as much as 
> people wanting to edit the website need the kernel source.  Having them 
> separate allows these two distinct groups to not need to check out reams 
> of data they don't actually need.

This is a non-issue. No one is checking out the current svn base. It
would consume a couple of TB of disk space. Everybody just checks out
/head or /head/sys or /stable/8. Adding /doc and /www would have zero
impact on current svn users and people working on doc would
$ svn co svn+ssh://svn.freebsd.org/base/doc
and not get any kernel source code whatsoever.

> > Another advantage of converting to SVN is that the docproj_nl stuff can
> > go into /projects/docproj_nl on SVN so that there is no need for yet
> > another VCS (p4 in this case) any longer.
> 
> Absolutely, I think the conversion to SVN is a certainty, for this and a 
> lot of other reasons.
> 
> Gavin



More information about the freebsd-doc mailing list