Вы можете использовать git cvsimport
. Для установки требуется cvsps
, но вам необходимо установить 2.x, так как 3.x больше не является несовместимым .
Затем импортируйте CVS-репозиторий в пустой git. Пример использования:
git cvsimport -C RepoName -r cvs -o master -k -v -d:pserver:anonymous@reponame.cvs.sourceforge.net:/cvsroot/path ModuleName
В OSX вы устанавливаете cvsps-2.1
следующим образом (имея brew
):
brew tap homebrew/versions
brew install cvsps2
brew link cvsps2
Вы также можете использовать cvs2git
инструмент, который может конвертировать CVS-репозиторий в git. Однако вам необходимо иметь доступ к каталогу CVSROOT.
Проверьте документацию cvs2git для шагов установки.
Пример использования:
cvs2git --blobfile=git-blob.dat --dumpfile=git-dump.dat --username=cvs2git /path/to/cvs/repo
Это создаст два выходных файла в формате git fast-import. Имена этих файлов указываются в вашем файле параметров или аргументах командной строки. В этом примере эти файлы имеют имена cvs2git-tmp/git-blob.dat
и cvs2git-tmp/git-dump.dat
.
.
Эти файлы можно импортировать в пустой репозиторий git:
cat git-blob.dat git-dump.dat | git fast-import
Затем удалите ветку TAG.FIXUP
и запустите gitk --all
, чтобы просмотреть результаты преобразования.
Проверьте больше, запустив: cvs2git --help
.