如何在 clearcase 中显示当前视图规范的最近更改和日志?

Sam*_*iao 2 clearcase

clearcase的新手。

由于 clearcase 的配置与 git 中的其他概念有很大不同,我可能是指具有指定版本/分支路径的任何文件的日志。

就像我想显示所有元素匹配的日志:

element * .../specified-lable-or-branch/
Run Code Online (Sandbox Code Playgroud)

Von*_*onC 5

首先,您需要了解ClearCase 和 Git 之间差异,ClearCase 以文件为中心(没有存储库范围修订或提交的概念)

您可以通过键入以下内容来显示任何可见文件的日志:

cleartool lshistory /myView/myVob/path/to/myFile
Run Code Online (Sandbox Code Playgroud)

请参见lshistory手册页。(以及我如何了解 VOB 数据库中的 ClearCase 事件记录

lshistory 命令按时间倒序列出事件记录,描述影响 aVOB数据的操作。

  • 文件系统数据历史
    列出有关元素、分支、版本和 VOB 链接的事件。
    这包括创建和删除对象的记录,以及附加和删除注释的记录:版本标签、属性和超链接。

另一种日志是lsvtree(版本历史):

lsvtree命令列出了一个或多个元素的部分或全部版本树。
默认情况下,列表包括元素版本树的所有分支,但过时的分支除外。

替代文字 http://youtrack.jetbrains.net/_persistent/tree.PNG?file=74-3724&v=1&c=true


OP补充说:

如何显示与模式匹配的元素的所有历史记录,例如在分支下有新版本?

您几乎可以将任何命令与find 查询结合使用。

Windows 语法:

cleartool find . -name "apattern" -exec "cleartool lshistory \"%CLEARCASE_PN%\""
cleartool find . -version "{created_since(target-data-time)}" -exec "cleartool lshistory \"%CLEARCASE_PN%\""
Run Code Online (Sandbox Code Playgroud)

Unix 语法:

cleartool find . -name "apattern" -exec 'cleartool lshistory "$CLEARCASE_PN"'
cleartool find . -version "{created_since(target-data-time)}" -exec 'cleartool lshistory "$CLEARCASE_PN"'
Run Code Online (Sandbox Code Playgroud)

对于“喜欢在一个分支下有新版本吗?” 具体来说:

cleartool find . -version "brtype(mybranch)" -exec ...
Run Code Online (Sandbox Code Playgroud)

应该这样做(任何没有为该分支创建的版本的元素都不会被列出)。