2011-05-03 135 views
2

我在源代码管理中做了一堆错误的检查。 开始修改之前我用一个标签标记了所有元素版本。ClearCase:从当前版本恢复为标签版本

我该如何告诉clearcase进行合并搜索,并提出比标记文件更新的所有文件,以便我可以回滚更改?

当我做一个简单的合并没有出现

回答

1

一个简单的办法就是建立一个新的配置规格与唱片公司为起点,和mkbranch规则(创造,而不是对工作的一个新的分支当前之一)。

这样,您只会看到并修改错误签入前使用过标签的文件。
同样的想法可以用UCM应用(使用错误的签入前刚刚做了基线的子数据流)

话虽这么说,对于相对少量文件恢复的基础上,手动解决方案find query是可能的(窗户语法):

cleartool find -all -element "{lbtype_sub(REL1)" -exec "cleartool find \"%CLEARCASE_PN%\" -version "{created_since(label-date) && brtype(label_branch) }" -print 

的想法是第一个查询合并找到的所有元素(文件或目录),它有一个标签,它们的版本当中,然后使用该元素(通过\"%CLEARCASE_PN%\"引用)来查找是否存在自标签日期以及右分支中创建的任何版本(执行错误的通信的那个版本)它的)。

这与negative or subtractive merge相结合可以使过程自动化。

+0

谢谢,我实际上找到了有关减法合并的文章,但对于我来说,我无法弄清楚当源代码是标签并且目标是最新的所有例子时,如何使它工作,适用于单个文件 – Joel 2011-05-03 15:31:27

+0

@Joel:您可以通过'cset.pl'脚本(http://www.ibm.com/developerworks/rational/library/05/0927_bellagio/)获得一些想法,该脚本执行类似的操作UCM活动中的版本 – VonC 2011-05-03 15:38:28