Aus alt (Sourcefourge CVS (!) Report) mach neu (git) (Im Wesentlichen von hier “geklaut”):
git cvsimport
installieren:
sudo apt-get install git-cvs
Lokales git-Repo erstellen:
Ganze CVS-Historie nach lokal holen:
rsync -av rsync://dsteinkopf@wvdr.cvs.sourceforge.net/cvsroot/wvdr wvdr_cvs
git-Repo daraus machen (vgl. manpage):
git cvsimport -v -a -k -d $PWD/wvdr_cvs -C wvdr_git core
Zeitstempel auf Änderungszeitpunkt setzen – mein Spleen (siehe git-touch-as-last-commit.sh):
( cd wvdr_git && git-touch-as-last-commit.sh )
Alles mal in Augenschein nehmen:
gitk
Müll löschen:
git branch -D origin
Autoreninfo säubern
Autorenfile erstellen:
git shortlog |egrep ^\\w |awk '{print $1, "=", $1, "<"$1"@users.sourceforge.net>"}' >../wvdr_authors.txt
Namen und Zeitzone (nach der E-Mail-Adresse) eintragen:
vi ../wvdr_authors.txt
Sieht dann z.B. so aus:
dsteinkopf = Dirk Steinkopf <dsteinkopf@users.sourceforge.net> Europe/Berlin
...
git-Repo nochmal erstellen – diesmal mit Autoren:
cd .. && rm -rf wvdr_git
git cvsimport -v -a -k -d $PWD/wvdr_cvs -C wvdr_git -A wvdr_authors.txt core
cd wvdr_git && git-touch-as-last-commit.sh
git branch -D origin
Nach remote pushen
git remote add origin https://dsteinkopf@git.steinkopf.net/r/public/wvdr.git
git push -u origin --all
git push -u origin --tags