从CVS迁移到ClearCase时,并非创建所有分支

时间:2014-03-11 09:30:54

标签: clearcase cvs migrate

我们正在将代码从CVS移至ClearCase,以便按照此处提供的指南http://www.ibm.com/developerworks/forums/message.jspa?messageID=13728313仅在一个vcs系统中合并我们的历史记录。

乍一看,一切都很好看。所有文件的所有版本似乎都已迁移,CVS中的所有分支和标记都存在于ClearCase中。

但是并非所有文件都正确创建了分支(在我看来)。示例file.bat 有以下历史(希望ascii绘图是可以理解的)。

1.1
1.2 --- SOME_TAG
1.3 --- SOME_OTHER_TAG
   |---- BRANCH_1
1.4 --- BRANCH_2
       |- 1.4.2.1
       |- 1.4.2.2

现在,在ClearCase中创建并正确应用了SOME_TAG和SOME_OTHER_TAG。 BRANCH_2是从CVS版本1.4创建的,其分支上的版本0具有与CVS版本1.4相同的创建日期/时间。这很好。版本1.4.2.1和1.4.2.2分别在BRANCH_2上创建为版本1和版本。

问题是BRANCH_1未创建。至少我希望分支可能只有版本0。

我可以从clearexport_cvs的输出中看出问题源于此处。 BRANCH_1标记不包含在clearexport_cvs命令的输出中,仅包含在SOME_OTHER_TAG中。

如何纠正这个问题的好主意?我在clearexport_cvs命令上找不到任何选项或开关,这似乎对我有帮助。

重要的是我们保留CVS的原始时间戳,以便能够为旧版本获取正确的源代码。我们使用了Parabuild所以我们每次构建的CVS的唯一引用类似于这个“cvs update -P -A -d -D”2012-12-20 13:31:42 GMT“-r BRANCH_1” 亲切的问候 彼得

1 个答案:

答案 0 :(得分:0)

如果clearexport_cvs无法正常运行,并且因为no way to export only one branch,则最好尝试逐步修复导入,并在专用上执行 clearfsimport ClearCase分支。

这将允许您使用CVS仓库中的一些选定修订来“修补”历史记录导入,但这不是一个自动过程(除非您编写CVS工作区的更新脚本like I did for Subversion )。