我在ClearCase中有两个动态视图,据我所知,它应该是“相等的”。
一个应该看看“Main
分支”,另一个分支(我们称之为A
)。在ClearCase中比较视图
我做了A
到Main
的合并(在Main
视图中),并且由于某种原因,A
视图的代码编译而Main没有。
有没有办法比较意见的差异?
我在ClearCase中有两个动态视图,据我所知,它应该是“相等的”。
一个应该看看“Main
分支”,另一个分支(我们称之为A
)。在ClearCase中比较视图
我做了A
到Main
的合并(在Main
视图中),并且由于某种原因,A
视图的代码编译而Main没有。
有没有办法比较意见的差异?
最简单的方法是在这两个视图上使用外部差异工具(如Windows上的WinMerge或BeyondCompare,Unix或Windows上的KDiff3 ...)。
我实际上会创建两个新视图(具有与两个初始视图相同的配置规范),以移除任何“缓存”效果,并在那里开始比较。
一旦完成了最初的外壳程序,我将在这两个视图中开始编译,看看它们中的一个是否仍然不能编译。
不要忘记合并A
到Main
并不总是在合并后产生相同的一组文件。
只有在A
开始时(或自从A
到的最后一次合并以来)在Main中没有发生进化,情况才会一样。
的setcs -current
你提到会:
–cur/rent
导致view_server刷新其缓存和重新评估当前的配置规格,这是存储在文件
config_spec
视图存储目录。这包括:
- 与nonabsolute规范评估时间规则(例如,现在,星期二)
- 重估-config规则,可能比选择不同的派生的对象以前
- 名为重读文件包括规则
如果你依赖于你的配置规格内的这是在错误的版本的“包含文件”,第一setcs将在正确的版本设置,而第二个会阅读其内容并为其余的设置正确的版本。
我该如何使用KDiff3,因为这些文件只在不同视图下处于相同位置? – 2010-08-08 20:31:50
@Amir:如果文件在不同的(动态)视图下,这意味着两个不同的路径(在Windows上是'M:\ MyView_onMain'与'M:\ MyView_onA',或'/ view/MyView_onMain'与'/ view/Unix上的MyView_onA')。所有这些diff工具都知道如何比较目录。 – VonC 2010-08-08 20:36:51
差异没有帮助 - 除了'.contrib'文件等,我找不到任何区别。视图是否消耗大量磁盘空间?习惯于以这种“触发快乐”的方式创造新的观点? – 2010-08-08 21:42:11