将cvs存储库转换为git

时间:2011-09-08 08:04:09

标签: git cvs

如何将CVS存储库转换为git存储库?

  • 我尝试过使用git cvsimport这样的命令:

    git cvsimport -v -d :pserver:thillaiselvan@(my_cvs_server_root) -r cvs -k (module_name)

  • 但是这个过程在这个过程中停顿了几分钟:

    cvs [rlog aborted]: could not chdir to file_name_config: Permission denied

  • 尽管使用.git创建了一个目录,但在尝试检查git log时显示致命错误:

    git log

    fatal: bad default revision 'HEAD'

  • 检查状态时:

    git status

    On branch master

    Initial commit

    nothing to commit (create/copy files and use "git add" to track)

1 个答案:

答案 0 :(得分:5)

我使用git --bare cvsimport -d:local:/cvsroot/$PROJECT -v -k -m -i -A Authors -o master $PROJECT将cvs项目从本地存储库(或镜像)导入到适合暴露给远程开发人员的本地裸git存储库中。如果您仍在使用CVS作为主存储库,则可以执行增量更新。

但是你也应该看看cvs2git,因为这有时会更好,但更适合一次性转换为git。 cvsimport可能会遇到供应商分支问题,因此仔细检查新导入的存储库非常重要。在这两种情况下,大型存储库可能需要很长时间(在具有10年旧cvs存储库的较慢机器上可能需要数小时)。