[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: changing repo layouts

From: David Weintraub <qazwart_at_gmail.com>
Date: Sun, 16 Aug 2009 01:18:19 -0400

On Sat, Aug 15, 2009 at 1:54 AM, Erick Calder <e_at_arix.com> wrote:

> the structure I want is: /project/trunk, /project/tags, /project/
> branches. I found the --trunk, --branches and --tags options
> available to cvs2svn but from the documentation I could not hope to
> figure out how to use these to build what I want...

Okay, we converted one project at a time, so the --branches and --tags
options allowed us to specify the location in the repository where we wanted
the branches and tags. I am not a Python developer, so I didn't bother with
the options file. However, I did find this piece of information which you
might find very handy:


Or you do what I did: Write a shell script to convert one project at a time,
and specify where the trunk, tags, and branches for that project would be
using the --trunk, --tags, and --branches command line options:

for cvs_module in $CVSROOT/modules/*
    cvs2svn -s $cvs_module-svn --trunk /modules/$cvs_module/trunk --branches
/modules/$cvs_module/branches --tags /modules/$cvs-module/tags

Then use svnadmin dump and load to create a single Subversion repository.
The Subversion repository revisions will come out somewhat wacky because all
of module "A"'s transaction will come after module "B"s transactions, but it
really doesn't affect anything in the long run.

also, the man page for svnsync is rather useless, as is svnsync
> help... there isn't even really a synopsis of what this command is
> supposed to do. could you elucidate how I can use it for my purposes?

svnsync isn't for the conversion. It allows you to synchronize one
Subversion repository to another Subversion server instance. This second
Subversion server is a read-only instance, and can be used in remote
locations which might experience slow connections to the root repository.
Some people use it for mirroring in case the first Subversion server becomes
inaccessible. You could then use this second Subversion repository as a the

By the way, I agree the documentation is pretty bad for both svnsync and
cvs2svn. Fortunately, you only have to use cvs2svn once, and svnsync is
fairly easy to setup once you understand what it does.

David Weintraub
To unsubscribe from this discussion, e-mail: [users-unsubscribe_at_subversion.tigris.org].
Received on 2009-08-16 07:19:09 CEST

This is an archived mail posted to the Subversion Users mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.