我正在从sourceforge(用Visual Basic 6 http://www.argentumonline.org制作的mmorpg)中导入一个旧的CVS存储库,而我们在不导入历史记录的情况下继续工作。
所以现在我有了一个包含所有CVS历史记录的git存储库 https://github.com/RecoX/cvs2gitao
当前项目:https://github.com/ao-libre/ao-cliente
如何将CVS历史记录添加到当前存储库的底部?
我正在尝试执行此解决方案,因为只有一个master
分支做到了这一点。
在我当前的存储库中
git remote add morgoao git@github.com:RecoX/cvs2gitao.git
git fetch morgoao
git rebase morgoao/master
并出现了很多“合并冲突”消息:
Resolve all conflicts manually, mark them as resolved with "git add/rm <conflicted_files>", then run "git rebase --continue".
You can instead skip this commit: run "git rebase --skip".
To abort and get back to the state before "git rebase", run "git rebase --abort".
我使用git rebase --skip
但不能正常工作,该怎么办?
答案 0 :(得分:1)
查看原始的CVS存储库,它仅包含一个master
分支。看起来您已经像mergecvs
一样将它吸收到了现代存储库中。我假设在新仓库中,master
和mergecvs
不共享任何提交。这样就可以做到
git checkout master
git rebase mergecvs
就是这样。我也可能将mergecvs
变成标签,因为它无处可去,但是您可能想在历史记录中保留它的尖端。
由于更新后的master
分支将被完全重写,因此您需要将其他分支重新建立到新历史记录中的相应位置上。从理论上讲,这也不会引起冲突。
答案 1 :(得分:0)
在我正在使用的当前存储库中,我进行以下工作:|
git remote add morgoao git@github.com:RecoX/cvs2gitao.git
git fetch morgoao
git rebase -X theirs morgoao/master
请注意,在重新定级theirs
中,您认为与之相反,是您当前所处的当前分支。
它就像一种魅力:)
有关更多信息,我编写了一个教程: https://medium.com/@requitolucas/importar-repositorio-cvs-a-git-sourceforge-a-github-de-manera-facil-20c63344bfa5