CVS to GIT conversion
Install Python <3 version
https://www.python.org/downloads/release/python-2715/Install svn with command line tools
Install make
https://sourceforge.net/projects/gnuwin32/files/make/3.81/make-3.81.exe/download?use_mirror=excellmedia&download=Setup cvs2svn //or use attached rar
//Download link (cvs2svn-2.5.0)http://cvs2svn.tigris.org/servlets/ProjectDocumentListcd downloadPath\cvs2svn-2.5.0svn co --username=guest --password=""http://cvs2svn.tigris.org/svn/cvs2svn/trunk cvs2svn-trunkcd cvs2svn-trunkmake man # If you want to create manpages for the main programsmake check # ...optionalConversion (say ServerRepository is cvs repo to be converted)
python cvs2git--blobfile=cvs2git-tmp/git-blob.dat--dumpfile=cvs2git-tmp/git-dump.dat--username=cvs2git --use-cvs ../../ServerRepository--fallback-encoding=utf8Create blank git repo
git init --bare /path/to/myproject.gitcd /path/to/myproject.gitLoad the dump files into the new git repository
git fast-import --export-marks=../cvs2svn-2.5.0/cvs2git-tmp/git-marks.dat <../cvs2svn-2.5.0/cvs2git-tmp/git-blob.datgit fast-import --import-marks=../cvs2svn-2.5.0/cvs2git-tmp/git-marks.dat <../cvs2svn-2.5.0/cvs2git-tmp/git-dump.datDelete the TAG.FIXUP branch
git branch -D TAG.FIXUPTo get rid of unnecessary tag fixup branches (run from git repository)
python pathto\cvs2svn-2.5.0\contrib\git-move-refs.pyRe-compact the repository and discard any garbage:
git gc --prune=nowNow you have a bare server git repo, just clone in client.
- Other way to convert cvs to git is http://www.catb.org/~esr/reposurgeon/dvcs-migration-guide.html (cvs-fast-export)
- Later split subdirectories in to different git repo (check git.md) https://stackoverflow.com/questions/359424/detach-move-subdirectory-into-separate-git-repository