Hi all, sorry about the delayed response, I was out of town.  Anyway, I
would be happy to help if you need assistance converting CVS to Subversion.
Here is a snippet of an article I wrote that may be a good starting point.
Let me know if I can help in anyway

- Jeff

Migrating From CVS

Once you are ready to move to CVS, there are several decisions that need to
be made before proceeding.  The first decision is whether or not to keep
revision history and log messages.  If it seems like an opportune time to
baseline your code, maybe you won't need the history.  Should this be the
case, a simple copy into your Subversion working directory and commit will
load the repository.  In the more likely case you decide to keep your
history, it is time for the next choice: do you bring branches and tags from
CVS into the Subversion repository?  Unfortunately, due to constraints in
the conversion mechanism, this is all or nothing.  Either you get all the
tags and branches, or just the trunk.

Subversion has a tool to import an existing CVS repository, including
history, branches and tags.  This process can get a little dicey depending
on your CVS repository.  Basically, the more straight forward your CVS
implementation, the higher chance of success in the conversion process.  If
you have a lot of branches and have moved or deleted entries from the CVS
repository, you may be in for a long night.  The conversion tool is a python
script called cvs2svn.py.  This script is packaged with Subversion but it is
maintained separately.  I would recommend getting the latest version before
trying to run the conversion.  You can check out the script and
documentation from collabnet:

svn co http://svn.collab.net/repos/cvs2svn
 
Once you have the script, take a look at the README and run cvs2svn.py
--help.  It should not take long to skim through this and be ready to give
the conversion a try.  The script has the ability to perform a dry run.
This will make sure it can properly parse the CVS repository with actually
doing the conversion.  It is not a bad idea to try this and see if you have
any issues before going through the actual conversion.  The success and
speed of the conversion will depend on many factors.  If you hit a snag,
here are a few suggestions:

.       If possible, run the conversion on the box your CVS repository is
on.  If you cannot do this, see if you can get a tarball of the repository
(maybe from a backup) and create it on your local machine.  If you have a
big repository, it will be worth the effort.
.       Leave braches and tags behind.  This is where I have run into the
majority of my problems.  If you are getting stuck on the braches, try
running the conversion with the --trunk-only option.  If you need the source
from the branches, manually create them in Subversion.  You will lose the
branch history but not the HEAD history.
.       Make sure you have plenty of disk space.  The conversion will create
a good amount of temporary files.  
.       Try the conversion first on a test Subversion repository.  If you
are adding to an existing SVN repository, you do not want to get half way
through and have an error put your existing code in a bad state.  
.       Create a dump file first.  The cvs2svn script can be run to create a
Subversion dump file using the --dump-only option.  This dump file can be
imported into an SVN repository.  This is especially useful if you run into
problems on the Subversion side.  Once you have the dump of the CVS
repository, you can use this file instead of reading from CVS each time.

> Meanwhile we move rapidly to do a move to subversion.  Aaron I volunteer
> myself to help as much as possible with the conversion.  Noel had also
> asked
> if I wanted to assist infrastructure and with the push I have made for
> subversion it's my duty to help: not doing so would make me a hypocrite.
> On
> the directory side Jeff Machols is pretty good with Subversion conversion.
> I'm CC'ing him to see if he can help us out as well - he had an interest
> in
> helping out with infrastructure at some point in time.
>




---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to