我想将 CVS 存储库迁移到 Gitlab。我在一个存储库下有多个模块。我需要在 Gitlab 中作为包含所有目录的单个存储库进行迁移。
CVS 存储库:
Repository ---> module_1
module_2
module_3
module_4
module_5
我需要将上述模块作为单个存储库迁移到Repository.git中。如何在不丢失每个分支和标签的提交历史记录的情况下做到这一点?
注意:我使用cvs2git工具来迁移它,但它缺少 CVS 的一些提交。
我执行了以下步骤以作为单个模块进行迁移,它正在正确迁移。
- 百胜安装颠覆
- svn --版本
- svn co --username=guest --password="" http://cvs2svn.tigris.org/svn/cvs2svn/trunk cvs2svn-trunk
- cd cvs2svn-trunk
- mkdir cvs2git-tmp
- python cvs2git --blobfile=cvs2git-tmp/git-blob.dat --dumpfile=cvs2git-tmp/git-dump.dat --username=cvs2git /home/cvs/Repositories/module_1/ --fallback-encoding=UTF- 8
- git init --bare /root/module_1-cvs2git.git
- cd /root/module_1-cvs2git.git/
- git fast-import --export-marks=../cvs2svn-trunk/cvs2git-tmp/git-marks.dat <../cvs2svn-trunk/cvs2git-tmp/git-blob.dat
- git fast-import --import-marks=../cvs2svn-trunk/cvs2git-tmp/git-marks.dat <../cvs2svn-trunk/cvs2git-tmp/git-dump.dat
- git gc --prune=now
- 光盘 $HOME
- git clone /root/module_1-cvs2git.git
- cd module_1-cvs2git
我执行了相同的步骤并修改了 [6] 步骤以迁移为单个 repo,如下所示,并完成了缺少少量提交的迁移,并添加了更多带有消息“此提交由 cvs2svn 制造以创建分支”的提交。
这是作为单个存储库迁移的方式吗?或者是否有任何其他方式或工具可以迁移为单个存储库?
[6]. python cvs2git --blobfile=cvs2git-tmp/git-blob.dat --dumpfile=cvs2git-tmp/git-dump.dat --username=cvs2git /home/cvs/Repositories/ --fallback-encoding=UTF-8
这里的任何输入都非常感谢。