将clearcase迁移到perforce

时间:2008-09-23 04:55:11

标签: migration perforce clearcase

我有大量的clearcase数据需要迁移到perforce。这些修订跨越了十年的大部分时间,我需要尽可能多地保留分支和标记信息。此外,我们广泛使用符号链接,支持clearcase但不支持perforce。您可以建议哪些建议或工具可以使这更容易?

5 个答案:

答案 0 :(得分:3)

第一步是决定是否需要迁移所有内容,或仅迁移某些关键版本。如果您只迁移重要版本(版本和主要里程碑),您将在Perforce中获得更简单的历史记录,而不会丢失任何重要的内容。然后,ClearCase可以作为历史存档保存,以备不时之需。 (除非IBM改变了事情,否则当维护用完时,ClearCase许可证不会过期,您只是失去了新的升级和补丁以及对支持的访问权限)

请记住,Perforce不是版本控制目录,并且不保留完整的每元素版本树 - 这意味着1:1具有精确结果将是不可能的。重新创建重要快照是一个更加可实现的目标;保持一切可能是不可能的,因为Perforce缺乏ClearCase所依赖的功能。

要了解Perforce对miration的评价,请查看 http://perforce.com/perforce/ccaseconv.html 这解释了主要的差异,并涵盖了您可以采取的一些方法。

答案 1 :(得分:2)

首先在"clearcase to perforce conversion"上进行Google搜索。 然后阅读ClearCase to Perforce Conversion Guide。 一旦你哭了,你将不得不决定(1)你能承受多少努力,以及(2)作为转换的一部分你真正需要捕获的东西。你不会全力以赴,所以你也可以专注于获得重要的分支。

另一个考虑因素是将每个支持的分支的当前状态捕获为快照,将其导入Perforce,然后关闭旧的ClearCase服务器,当需要访问时将其保存在当天的已知良好状态来自深刻,黑暗,前Perforce日子的东西......

答案 2 :(得分:1)

其他答案已过时。现在,您可以使用许多选项导入CC-> Perforce,同时保留历史记录。 http://www.perforce.com/sites/default/files/pdf/migration-planning-guide-clearcase-to-perforce.pdf

答案 3 :(得分:0)

你还必须记住的是,你的importerscript可能会在另一个序列中略微提交而不是clearcase提交(也许你正在遍历dir,可能是文件的历史等)。

因此,除非您将所有版本信息收集到(大型)数据库中并在之后对它们进行排序,否则最终会提交一些不太有用的提交(除了单个文件的历史记录)。当您(希望)更改您的提交策略以将原子更改提交到perforce时,它将在开发开始时可见:之前的提交对项目范围没有任何意义。

所以你真的应该考虑留下明确的历史。标签/分支创建也是一个不同的问题,因为您需要旧的分支机构的旧配置。 最后,你会在旧标签中得到错误的文件名(因为perforce不支持dir-vers。)所以你将使用clearcase(并且非常很难获得每个版本的正确文件名一个文件!)。

您将遇到的最后一个问题:导入器运行时间: 如果您有大型VOB(例如10年,50 GB大小),您将等待几天,以便进口商收集所有信息并将其转换为漂亮的perforce回购。这一天你的devteam将停止工作。

答案 4 :(得分:0)

快速说明我从ClearCase到Perforce的一个导入。
ClearCase to Perforce Conversion Guide中所述:

  

Perforce支持原子变更交易; ClearCase没有。

     

请注意,标签通常用于简单地表示特定容易指定的文件集的快照;由于Perforce使用原子更改事务和文件命名语法,因此Perforce在不使用标签的情况下很容易做到这一点。
  例如,可以使用

获得//depot/projecta中的更改42中的所有文件的状态
p4 sync //depot/projecta/...@42

这意味着导入的ClearCase项目是 UCM one ,因为基线概念紧跟全球修订版。
只导入了带有基线的文件,其他版本被丢弃。