cvssuck cvs2svn howto
# get cvssuck ( http://cvs.m17n.org/~akr/cvssuck )
cvs -d :pserver:anonymous@cvs.m17n.org:/cvs/cvs login
cvs -d :pserver:anonymous@cvs.m17n.org:/cvs/cvs co cvssuck
# it is a ruby script, you might have to modify the path to ruby at the top of
# the script, the script assumes ruby is in /usr/local/bin, on my slackware
# laptop ruby is installed in /usr/bin
# login into the remote cvs server, and suck!
cvs -d :pserver:username@remote.cvs.server:/cvs/devel login
cvssuck :pserver:username@remote.cvs.server:2401/cvs/devel mymodule
8>< ------------------------------------------------------------------------ ><8
# just for a test (or for someone who wants to use cvs), YOU DO NOT NEED TO DO
# THIS IF YOU ARE JUST CONVERTING a cvs module to GIT, bzr or svn
cvs -d /home/martin/src/test-cvs-repository init
cp where/ever/is/your/cvssucked/mymodule /home/martin/src/test-cvs-repository
cvs -d /home/martin/src/test-cvs-repository co mymodule
8>< ------------------------------------------------------------------------ ><8
# get cvs2svn from http://cvs2svn.tigris.org
# cvs2svn (it is a python script, so obviously you need python)
cvs2svn --dumpfile Pack_Solaris-00.dump Pack_Solaris
# where Pack_Solaris is a cvs module i retrieved with cvssuck
# i manually created ai.aaa/branches/martin/Pack_Solaris in svn as the cvs2svn
# script created the 'standard' svn module layout:
# /branches
# /tags
# /trunk
#
# and i prefer to have the following layout:
# Pack_Solaris/branches
# /tags
# /trunk
#
# now everything
#
svnadmin load --parent-dir ai.aaa/branches/martin/Pack_Solaris /usr/local/svn < Pack_Solaris-00.dump