我们正在考虑从ClearCase迁移到Subversion。该项目已经存在了一段时间(7年),我们积极支持三个“主要”版本(分支),以及一些较早版本中的偶尔修复。该项目相当大-大约有200万行Java代码。

我很好奇是否有人做了类似的迁移。


SVN能够处理这么大的项目吗?
迁移所有历史版本/分支是否有意义?工具可以选择性地做到吗?
此类项目的迁移过程需要多长时间?迁移正在进行中,有效的工作方式是什么?

最佳答案

对于进行了几次此类迁移,我将提出以下观点:


您无需将所有ClearCase版本的历史记录导入到SVN中。在大多数情况下(根据我的经验),仅需要带标签的版本(在给定集合的所有文件上一致应用的版本),除非您确实需要细粒度的历史记录修订考试。
您需要考虑在迁移过程中的重组:您要导入什么?您要离开什么?您是否希望SVN内容完全反映ClearCase VOB中存储的文件结构?有时,这种迁移是重新考虑某些文件组织的机会(通常是通过对某些目录的简单重命名规则)。
迁移以ClearCase 2 SVN方式更快,因为SVN以存储库为中心并提交一组文件,而ClearCase以文件为中心并提交每个文件(非常繁琐)
如果清楚地标识了要导入的文件集,则迁移过程可以重复多次,这意味着您可以在进行第一次(大)导入时继续在ClearCase中工作,然后在其上放一个基准(UCM标签)您的代码,然后仅重新导入增量,从而有效地结束了迁移过程。

10-07 12:52
查看更多