Converting an existing CVS repository to Subversion | January 15, 2006-->
January 15, 2006Here is how to convert your existing CVS repositories to Subversion.
Step 1: get cvs2svn
Go to cvs2svn.tigris.org and download the package corresponding to the version of Subversion you are using (On Debian try apt-get install cvs2svn, on Mac OS X try Fink or Darwin Ports).
Step 2: Convert your repository
cvs2svn is designed for one-time conversion from CVS to Subversion. So commit all your pending changes and take your CVS repository offline to make sure that no more changes are commited to it.
I wanted to convert all my existing CVS Repositories to one Subversion repository:
stefan@www:~/tmp$ ls -l /usr/local/cvsroot/ total 53 drwxr-xr-x 3 stefan staff 1024 Nov 26 2004 CVSROOT [...] drwxrwxr-x 5 stefan staff 1024 Jan 11 2005 feedgenerator [...] drwxrwxr-x 8 stefan staff 1024 Feb 20 2005 www.juretta.comSo, here is how:
Make a copy of your CVS repository
stefan@www:~/tmp$ cp -R /usr/local/cvsroot ./
Run cvs2svn
cvs2svn -v means verbose, -s = PATH to Subversion repository.
stefan@www:~/tmp$ cvs2svn -v -s /usr/local/svn/repos/cvsrepos cvsroot [..] ------------------------------------------------------------ CVS Revision grouping: Start time: Sun Dec 26 11:22:18 2004 (duration: 1 second) [..] Timings: ------------------ pass 1: 230 seconds pass 2: 0 seconds pass 3: 0 seconds pass 4: 0 seconds pass 5: 1 second pass 6: 0 seconds pass 7: 0 seconds pass 8: 325 seconds total: 555 seconds
Check the new repository
stefan@www:~/tmp$ svn ls file:///usr/local/svn/repos/cvsrepos/trunk CVSROOT/ RubyLib/ [...] www.juretta.com/
Done!
