Как импортировать CVS в git scm? - PullRequest
4 голосов
/ 08 марта 2012

Чтобы импортировать ревизию модуля CVS, я использую:

/usr/lib/git-core/git-cvsimport -a -i -p r,revisionname -k -v -d :pserver:user@xxx.com:2401/srv/cvs/rootname modulename

Это работает какое-то время, а затем я получаю что-то вроде cvsps с ошибкойКак определить ошибку cvsps?

Ответы [ 3 ]

3 голосов
/ 15 марта 2012

Отказались от этого подхода и использовали cvs2git.

cvs2git - это инструмент, который можно использовать для переноса репозиториев CVS в более новые инструменты контроля версийвключая git.

Пример использования:

cvs2git \
    --blobfile=cvs2git-tmp/git-blob.dat \
    --dumpfile=cvs2git-tmp/git-dump.dat \
    --username=cvs2git \
    /path/to/cvs/repo
2 голосов
/ 18 марта 2015

Вы можете понизить его до cvsps-2.1 и повторно протестировать, так как git cvsimport не работает должным образом с cvsps-3.x, потому что у него другой синтаксис.

В OSX вы можете (имея brew):

brew tap homebrew/versions
brew install cvsps2
brew unlink cvsps
brew link --overwrite cvsps2
2 голосов
/ 07 февраля 2015

С http://git -scm.com / docs / git-cvsimport

ВНИМАНИЕ: git cvsimport использует cvsps версии 2, что считается устаревшим;это не работает с версией 3 cvsps и позже.Если вы выполняете однократный импорт хранилища CVS, рассмотрите возможность использования cvs2git или parsecvs.

Проверьте, есть ли у вас версия 3 cvsps или более поздняя

$ cvsps --version

Если вы можетепонизьте его до версии 2 версии cvsps.

Основное различие заключается в том, что cvs2git не является инкрементным (за исключением использования этот обходной путь), поэтому он предназначен для проверки одним выстрелом.С cvsimport вы можете делать инкрементные обновления и оставаться в курсе репозитория cvs.

...