Version control 在ClearCase中搜索带有特定注释的签入

Version control 在ClearCase中搜索带有特定注释的签入,version-control,clearcase,Version Control,Clearcase,我被要求提供大约3个月前签入ClearCase的详细信息。我知道注释中包含的QC编号,但到目前为止,我完全没有找到一种通过注释搜索ClearCase签入的方法 有什么想法吗?你看过了吗?具体来说,请参阅下面的部分 如何查找带有特定注释的元素和版本 我想找到所有元素/版本的具体评论,如“Jane在11-26日改变了这个” M:\my\u base\u view\my\u base\u vob>cleartool find-all-exec“cleartool lshistory-minor-fmt

我被要求提供大约3个月前签入ClearCase的详细信息。我知道注释中包含的QC编号,但到目前为止,我完全没有找到一种通过注释搜索ClearCase签入的方法

有什么想法吗?

你看过了吗?具体来说,请参阅下面的部分

如何查找带有特定注释的元素和版本

我想找到所有元素/版本的具体评论,如“Jane在11-26日改变了这个”

M:\my\u base\u view\my\u base\u vob>cleartool find-all-exec“cleartool lshistory-minor-fmt\%n\t%c\n\“\%CLEARCASE\u XPN%\”>c:\output.txt

**这将通过管道将输出传输到一个文件,您必须为该文件添加grep,以查找特定的注释

M:\my\u base\u view\my\u base\u vob>cleartool find-版本“lbtype(LABEL_NAME)”-exec“cleartool description-long%CLEARCASE\u PN%”c:\output2.txt

遗憾的是,这看起来有点复杂。

走上了正确的道路,但需要注意的是:

  • 我确信不需要第二个命令行(
    cleartool find.-version!“lbtype(LABEL\u NAME)”…
  • 如果您认为您的文件可能已被移动,“
    cleartool find-all
    ”非常有用,但在大型VOB上,该过程可能会非常长
  • 如果没有“
    -nvis
    ”选项,如果文件已被“rmnamed”(删除),它将找不到该文件
  • 使用“
    lshistory-minor
    ”是十足的疯狂:在一个有几个月或几年历史的vob上,这只会花费太多时间。对于找到的每个元素,它将显示该元素所有版本的所有历史记录,而不可能优化显示的版本集。这种解决方案根本无法扩展。
    这一点,加上“
    lshistory
    ”命令的
    -minor
    选项,并没有给手头的问题带来任何价值:它只会多次显示相同的版本,仅仅是因为像“
    附加的超链接”这样的内部注释Change@13707xx@\my_pvob
    “'或'
    附加的超链接”Merge@xxxx@\我的声音“
您需要使用以下工具优化查询:

  • 所需元素的类型(如果是文件:
    -type f
  • 例如,日期“
    自(1月30日)开始创建”&&!自(2月28日)开始创建”
    ”将限制要考虑的日期范围
  • 用户
我将使用:

M:\my_base_view\my_base_vob>
  cleartool find -all -type f -user myLogin -version "{created_since(30-Jan)&&!created_since(28-Feb)}" -exec "cleartool descr -fmt \"%n\t%c\n\" \"%CLEARCASE_XPN%\"" >c:\output.txt
这将只查找我在特定日期段内签入的文件,这是一种检查较小版本集的方法

请注意,我使用了“
descr
”(
descripe
命令),它仅适用于当前版本(而不是用于显示像“
lshistory
”这样的元素的所有历史记录)

如果文件已被rmnamed,请使用“-nvis”选项再次运行相同的命令(它将仅查找视图中不可见(没有标准路径名)的元素及其分支和版本

警告:如果您指定一个“之前”日期和一个“未来”日期(例如:“
&&&!created_自(4月28日)}
”,而我们还不是4月28日),它将始终选择0个版本(!?)。

这与您的问题无关,但如果您输入了“日期前错误”错误地说,这可能会导致错误的印象,即没有要查找的版本,而实际上有要查找的版本。

是的。我认为上面的内容是一个很好的补充。IBM说明中的示例与谁进行了原始签入无关,因此您可以进一步优化。那么,为什么在相关且有效的情况下,这一点被否决了被接受为答案?抱歉:我投了反对票,但没有解释原因:答案是文档的盲拷贝,没有任何附加警告(长,没有检测到rmnamed文件…)“盲”因为它包括第二个与评论无关的请求……简言之:我不喜欢在回答中看到的一切。第一个命令所揭示的原则是合理的,并且可以作为回答的基础。如果马克设法用它解决了问题,这就是问题所在。继续。答案是对文档的引用我认为这有点不同。正如我在下面提到的,你对上面的修改是正确的,值得强调。我做了一些测试:对于任何有中到大历史的VOB,lshistory是一个“有害”的解决方案(output.txt太大,操作时间太长)。我已经更新了我的答案(这不再是你所说的“附录”)以获得实际有效的答案。-1“查找”后的“lshistory”毫无意义:在一个足够的地方进行两次查询。我已使用更高效的查询更新了我的答案,以搜索带有特定注释的版本