Friday, December 04, 2009

Found a bug in git-cvsimport so i will use cvs2git

I'm not the only one that found the bug

"Me, I don't trust anything but cvs2git to import a CVS repo. I then use git-cvsimport to keep it up-to-date, but even then, I've seen it omit a couple of commits for no good reason, forcing me to re-import from scratch."

so i will use cvs2git to import all the firebird branches

mkdir firebird2
cd firebird2

rsync -av rsync://firebird.cvs.sourceforge.net/cvsroot/firebird/firebird2 .
rsync -av rsync://firebird.cvs.sourceforge.net/cvsroot/firebird/CVSROOT .

cd ..
svn co --username=guest http://cvs2svn.tigris.org/svn/cvs2svn/trunk
cvs2svn-trunk

# Dump the CVS history in a format ready for git-fast-import (a few hours)
cd cvs2svn-trunk
./cvs2git --blobfile ../cvs2git.blob --dumpfile ../cvs2git.dump \
--username '(no author)' --fallback-encoding utf-8 ../firebird2

# Create and fill the Git repo
mkdir ../firebirdgit
cd ../firebirdgit
git init
cat ../cvs2git.{blob,dump} | git fast-import

git fast-import is that is really fast (a few minutes)
what is left to do is to export it over ssh or web

git clone --bare /tmp/firebirdgit/.git /tmp/firebird.git
and you can test it over remote
cd ~
git clone foobar@localhost:/tmp/firebird.git

qgit




the only problem left is how do i do it daily to be pushed to gitorious ?

No comments: