有人能解释什么是Clearcase中的邪恶双胞胎和减法合并?
答案 0 :(得分:10)
邪恶双胞胎
Evil Twin是您已删除的元素(使用rmname)并希望重新添加,但在目录的先前版本中存在“邪恶双胞胎”。
您必须记住每个元素都有唯一的ID,因此您尝试添加具有相同名称的元素 - 但使用不同的UID。这是不允许的。
处理Evil Twin的最佳方法是将现有元素的最新版本重新链接到新版本的目录。然后,您可以创建元素的新版本并替换其中的数据。
减法合并
减法合并与选择性合并相反。
选择性合并(默认的bog标准合并)会将其他元素版本的更改添加到您的签出版本中。
减法合并尝试删除与您签出的版本不同的版本所做的更改 - 因为它是一个糟糕的版本,你在其中犯了错误等。
答案 1 :(得分:3)
IBM有一个nice article on substractive merge。
可以执行减法合并以排除或绕过分支上的不良版本,而无需实际删除不良版本 使用
-delete
选项进行Cleartool合并将允许用户从上一个已知正常版本合并到同一分支上的新版本,这将排除在标识为坏版本的版本中完成的工作。
此合并必须从命令行执行,它不会创建合并箭头,可以手动创建箭头。
这适用于文件和目录
但你需要意识到合并是关于文件或目录,而不是目录“及其中的所有内容”。
要递归合并,请查看findmerge。
您可以只想合并目录(因为它们总是首先合并,以确定要合并的文件的实际列表!),如此IBM article
% cleartool setview major_vu% cleartool findmerge /vobs/vob1 /vobs/libvob2 –type d \
–fversion /main/LATEST –merge
您也可以从LATEST版本的分支或标签进行合并:
findmerge . –fversion /main/rel2_bugfix/LATEST –print
findmerge . –ftag rel2_bugfix_view –whynot –print
注意:在用'-merge -gmerge
'替换它之前,-print总是一个好主意,以便预览要合并的内容。但如果涉及目录,则只打印需要合并的“directory X
”,而不是文件的确切列表。
对于邪恶的双胞胎,请查看IBM article。案例敏感问题可能是一个真正的痛苦,处理和创建一些邪恶的双胞胎,而你没有意识到...