The detailed description can be found on the Icinga Wiki here.

$ mkdir cvs && cd cvs
$ rsync -av rsync:// .
$ svn export --username=guest cvs2svn-trunk
$ cp cvs2svn-trunk/cvs2git-example.options cvs2git.options
$ vim cvs2git.options

    'patrickproy' : ('Patrick Proy', ''),

    # This one will be used for commits for which CVS doesn't record
    # the original author, as explained above.
    'cvs2svn' : 'cvs2svn ',

    # The filesystem path to the part of the CVS repository (*not* a
    # CVS working copy) that should be converted.  This may be a
    # subdirectory (i.e., a module) within a larger CVS repository.

$ cvs2svn-trunk/cvs2git --options=cvs2git.options --fallback-encoding utf-8
$ mkdir manubulon-snmp ; cd manubulon-snmp
$ git init
$ cat ../cvs2svn-tmp/git-{blob,dump}.dat | git fast-import
$ git reset --hard

On github, add a new repository and add that as origin.

$ git remote add origin
$ git push -u origin master

Voilà –

%d bloggers like this: