Clearcase:如何检查一个元素在主干上是否有一个版本,该版本是在我从主干分支后创建的?

Clearcase:如何检查一个元素在主干上是否有一个版本,该版本是在我从主干分支后创建的?,clearcase,Clearcase,假设我有一个100个元素的vob。在这100个分支中,我根据各自主干的最新版本创建了自己的分支。比如说我一周前做的。今天,我想看看10个元素的主干中是否有一个版本比我一周前分支的版本更新。当然,这样做的一种方法是查看所有10个元素的版本树,但是我是否可以运行一个命令来自动查看vob,找到有我分支的10个元素,并检查主干上是否有比我分支的版本更新的版本?首先,创建分支时,该分支上没有所有文件的新版本。 只有在给定文件具有签出/签入操作且配置规范设置为创建分支时,才会为该文件创建分支 现在,您可以运

假设我有一个100个元素的vob。在这100个分支中,我根据各自主干的最新版本创建了自己的分支。比如说我一周前做的。今天,我想看看10个元素的主干中是否有一个版本比我一周前分支的版本更新。当然,这样做的一种方法是查看所有10个元素的版本树,但是我是否可以运行一个命令来自动查看vob,找到有我分支的10个元素,并检查主干上是否有比我分支的版本更新的版本?

首先,创建分支时,该分支上没有所有文件的新版本。
只有在给定文件具有签出/签入操作且配置规范设置为创建分支时,才会为该文件创建分支

现在,您可以运行以下请求示例来查找这些版本:

cleartool find . -version "brtype(myBranch)" -print
将打印分支中的所有版本

如果将其与时间查询相结合:

cleartool find . -version "{created_since(date1) && brtype(myBranch)" -print
,你应该得到你想要的


不过,OP补充道:

我不寻找在特定日期后创建分支的元素。
我正在寻找具有我的分支(在任何日期创建)的元素,以及在我从主干创建分支后在主干上创建的版本

“元素”是这里的关键词:当您想列出基于多个版本的文件时,首先要查找“元素”(即文件和目录),其次是与相关标准匹配的版本

cleartool find . -element "{brtype(myBranch)" -version "{created_since(date1) && brtype(trunk)" -print
但这并不能保证“
trunk
”上的版本是在“
myu branch
”上的版本之后创建的

为此,您必须编写脚本,首先:

cleartool find . -element "{brtype(myBranch)" -exec "cleartool descr -fmt \"%n %d\" \"%CMEARCASE_XPN%\"" > afile
,然后使用该文件为找到的每个文件和版本生成相关的find指令。

为了显示与兼容的数据格式,您必须使用。

为什么不使用合并功能查看主分支上是否有任何已按版本更新的内容?如果您在main和您的分支之间运行findmerge(将main作为源,将branch作为目标),您应该了解主干上发生了什么变化。希望这有帮助


PS:您可以使用clearcase合并管理器在windows上执行此操作

谢谢你的回复!不过,我可能问得不太清楚。我不是在寻找我的分支在某个日期之后创建的元素。我正在寻找具有我的分支(在任何日期创建)的元素,以及在我从主干创建分支后在主干上创建的版本。希望这能澄清我的问题。@ryanmark:刚刚更新了我的答案,以考虑您的特定搜索条件。不过,这不是一个完全成熟的解决方案。