Using cvs2svn to migrate your repository from CVS to Subversion

This week I migrated our codebase from CVS to Subversion!

I'd previously downloaded the Tigris cvs2svn migration tool onto my build server, read the documentation and performed a test run of the migration last week so I was pretty confident that I would have no problems.

These are the steps that I took to perform the migration:
Notes: For simplicity I'll assume that your CVS repository root is /cvs and your Subversion directory is /svn. The cvs2svn tool creates a new Subversion repository when you run the cvs2svn migration tool.

  • Log in to the build server (a Debian Linux box) as root

  • Change directory to /cvs and find the name of the module you want to migrate to a Subversion repository, I'll use the module old in my example.

  • Choose a suitable name for your new Subversion repository (it doesn't have to be the same name as the CVS module) I'll use new in my example.

  • Run the following command, (it's best to redirect it's output to a log file to so you can check for errors at the end):

    cvs2svn -s /svn/new /cvs/old
This operation may take a while if the CVS repository is large, our migrated repository took about 30 minutes to migrate and resulted in about 3,500 revisions. I had no problems in the area of branches or tags but this is one issue that has cropped up when I migrated another repository over. You need to use the --force-tag and --force-branch options to specify how to deal with any problematic tags.

I performed the migration as the root user to ensure that we wouldn't have any problems with file permissions when reading or writing files, but we now need to change the permissions of the newly created Subversion repository to ensure that Apache has access to the files:

chown -R www-data:www-data /svn/new

Your new repository will now be available in the same way that you access your other Subversion repositories, just remember to use your newly migrated repository name!

Technorati Tags: , , , , , ,

Electronic voting machines hacked to give false voting results

I think this is a concern for all processes that are "going digital" - the opportunity for hacking and fraudulent activity to alter the state of the output. Check out this short demonstration video from Princeton University on installing rigged voting software onto a Diebold AccuVote-TS voting machine, one of the most widely deployed electronic voting platforms in the United States.

Technorati Tags: , , ,

How to restore a deleted and committed directory in CVS

I had to put my CVS administrator hat on this morning when a colleague realised that yesterday he had managed to delete and commit a directory full of files by accident. We needed to roll-back the clock to yesterday afternoon so to speak but CVS doesn't really give you any handy tools to do this.

I first logged onto the CVS server and browsed to the relevant directory (on the server the directory and files are not deleted, just marked as so) and took a look inside one of the ,v text files to find the time when the commit happened (where the file's state changed from Exp to dead).

After a bit of searching I found a very clear set of instructions on the Ximbiot CVS Wiki that detailed how to restore a deleted directory.

I followed those instructions and brought the directory (and files) back to life again!

Technorati Tags: ,

The latest VentureVoice podcast is a real treat!

I'm two-thirds of the way through listening to the latest VentureVoice podcast and I must say it's one of the most interesting and captivating things that I've listened to in a long time.

It's an interview with Fred Seibert, a life-long entrepreneur, a former jazz producer, the guy who introduced the animated MTV logo, turned Hanna-Barbera cartoons around and now runs his own online cartoon video network.

Greg Galant (the host of VentureVoice) seems to ask just the right questions and Fred describes his experiences in such an interesting way.

Download it and listen to it as soon as you can:

VV Show #43 - Fred Seibert of Frederator Studios and Next New Networks

Technorati Tags: , , , ,