目前我打算帮助一个开源项目的相当大的git转换。 存储库相当大,所以试用&错误很慢(超过60,000次提交)。svn to git转换(如何检查存储库质量)
有很多与有关的问题如何完成git转换,但几乎没有关于如何检查转换是否有效的详细信息。
当然也有像两个回购设定的修订和比较库的内容,但历史,在提交信息...移动文件,跟踪分支机构等之间变化的基础 - 变得更加复杂。
所以我的问题是:
- 哪些领域应该在新转换的git仓库进行检查,发现转换是正确的,成功了吗?
- 有什么需要注意的问题?
- 任何人都可以提出评估转换svn项目的策略,以确保在转换过程中没有出错吗?
注:目前我们使用reposurgeon但是应该对答案没有霸菱,但它确实意味着我们要做一个一次性的转换和得到,它右 。
也许更好地让过渡更平缓,即保持Subvresion资料库在线(至少只读)一段时间?如果在转换过程中没有错误消息+一年后没有人会抱怨任何缺失的信息,那么考虑稳定的git存储库;并在失踪的情况下从SVN获取它。 –
@Vi,是的,我们会扔掉svn回购,我有一个本地副本(用于测试),我们保留备份。即使我们有SVN可用,并且它可能(原则上)可以返回并使用它。 - 一旦我们有了几个月的发展 - 发现一些错误将会非常棘手,要回头去纠正(我猜可能无论如何,重写历史的工具存在但不是微不足道的) - 很可能我们只是与我一起生活,我想避免。 – ideasman42
在Git中,如果有人重写了历史记录并发布了它(使用'push --force'),如果您记住原始历史记录的上次提交SHA-1值(并且尚未进行垃圾回收),则仍然可以访问原始历史记录。您还可以设置规则以防止在使用denyDelete和denyNonFastForward进行推送时覆盖历史记录。 –