When I started out with my company a good friend and fellow Perl monger, set up a CVS repository on one of his machines.
I have since then become quite happy about Subversion and I signed up with an external Subversion provider, which works really well for me. It is easy to use and it gives me what I need.
So I wanted to migrate the active stuff from CVS to Subversion - primarily my CPAN modules, so the term active is perhaps not the best description. Anyway - not having these in a repository I can access from everywhere have started to become problematic, so I decided to move the stuff to Subversion so I could at least pretend to be active.
So I started by making a tar-ball of the old repository directory on the CVS server.
I setup CVS on my workstation ( http://developer.apple.com/internet/opensource/cvsoverview.html>)
I untarred the tar-ball in the new directory and I was able to check stuff out.
So I checked out everything relevant (other stuff can just stay in CVS, no problem).
I copied my old working directories into the newly checked out working directories and commit the changes to my new local CVS server.
I then made a subversion dump using cvs2svn
.
I sat up the projects with my provider each with a dump file.
So now I can move on and get some distributions released, which I should have shipped long ago (they are starting to sneak into production code with one of my clients).
I added an ohloh user to some of the repositories with read permission and added two projects to Ohloh.
I know people are all crazy about git these days and perhaps I will end up all excited about git as well and I know I am some years behind with my use of Subversion, but believe me I am behind with most things I do.
I do however like Subversion a lot and the tools available seem to quite good. So for now Subversion is what I am using.