Jun 102013
 

I started playing with cvs2svn, a tool for migrating a CVS repository to Subversion. cvs2svn does more than just Subversion. It also handles git and Bazaar.

Why am I moving from cvs? I couldn’t get my existing cvsupd server to run on a new server. Attempts to start cvsupd gave:

$ sudo /usr/local/etc/rc.d/cvsupd onestart
Starting cvsupd.
2013.06.10 15:35:22 UTC [35995]: CVSup server started
2013.06.10 15:35:22 UTC [35995]: Software version: SNAP_16_1h
2013.06.10 15:35:22 UTC [35995]: Protocol version: 17.0
2013.06.10 15:35:22 UTC [35995]: Ready to service requests

Pressing ctrl-C gives:

^C2013.06.10 15:38:39 UTC [35995]: Going down

/usr/local/etc/rc.d/cvsupd: WARNING: failed to start cvsupd

So… I’m converting. But with FreeBSD no longer using cvs for it’s own repo, I can’t see a reason not to move to svn.

The conversion

It’s early days yet, but I tried one conversion, which after a few failed attempts, gave me this:

cvs2svn Statistics:
------------------
Total CVS Files:              8341
Total CVS Revisions:         15924
Total CVS Branches:           6237
Total CVS Tags:               5951
Total Unique Tags:              60
Total Unique Branches:          20
CVS Repos Size in KB:      6682304
Total SVN Commits:            3394
First Revision Date:    Sun Oct  7 19:08:29 2001
Last Revision Date:     Fri May 31 18:17:21 2013
------------------
Timings (seconds):
------------------
  79   pass1    CollectRevsPass
   0   pass2    CleanMetadataPass
   0   pass3    CollateSymbolsPass
 533   pass4    FilterSymbolsPass
   0   pass5    SortRevisionsPass
   0   pass6    SortSymbolsPass
   1   pass7    InitializeChangesetsPass
   1   pass8    BreakRevisionChangesetCyclesPass
   1   pass9    RevisionTopologicalSortPass
   1   pass10   BreakSymbolChangesetCyclesPass
   1   pass11   BreakAllChangesetCyclesPass
   1   pass12   TopologicalSortPass
   2   pass13   CreateRevsPass
   0   pass14   SortSymbolOpeningsClosingsPass
   0   pass15   IndexSymbolsPass
 864   pass16   OutputPass
1485   total

I have not tried the results yet.

Website Pin Facebook Twitter Myspace Friendfeed Technorati del.icio.us Digg Google StumbleUpon Premium Responsive