Instructions
The goal is to maintain the history of the CVS repo during the conversion.
- On the CVS server:
- wget "http://cvs2svn.tigris.org/files/documents/1462/49237/cvs2svn-2.4.0.tar.gz"
- cd cvs2svn-2.4.0
- edit cvs2svn-example.options to match your needs. E.g.:
- line ~377 cx.username
- line ~563 change it to the path for your CVS repository, e.g. /app/cvsrepo/cvs/someDirectory/myProject. The top of the path must contain the CVSROOT (e.g., at /app/cvsrepo)
- python cvs2git --options=cvs2git-example.options --fallback-encoding utf-8
- On a server that has git installed:
- copy the git-blob,dat and git-dump.dat files created in step #1 locally to /tmp
- mkdir myProject
- cd myProject
- git init
- cat /tmp/git-{blob,dump}.dat | git fast-import
- git log (check that there is history of commits)
- git reset —hard
- create repo on GitHub (e.g., guthub.com/myOrganization/myProject)
- git remote add origin git@github.com:myOrganization/myProject.git
- git push -u origin master