【问题标题】:List all ClearCase users that touched every version of an element列出所有触及元素每个版本的 ClearCase 用户
【发布时间】:2015-03-28 07:05:52
【问题描述】:

我需要为元素的版本树中列出的每个版本获取用户名列表,然后对目录中的每个元素重复。

到目前为止,我想出了以下几点:

> cd M:\path\to\folder
> cleartool find . -version "created_since(01-January-1979.00:00:00)" -exec "cleartool describe -fmt ""%Lu\t%Fu\t%n\n"" %CLEARCASE_XPN%"

我选择了一个非常老的日期,认为我们的 VOB 比那个日期更年轻。

这为元素的每个版本提供了相同的信息,因为它查看的是元素所有者,而不是贡献特定版本的个人。

我使用以下页面作为参考:

这可能是一个简单的 RTFM 案例。任何帮助表示赞赏。

【问题讨论】:

    标签: clearcase


    【解决方案1】:

    需要检查%n(在-fmt_case directive中使用)是否返回版本名称的元素名称:

    • 如果是元素名称(没有任何extended path信息,如@@/main/.../x),那么cleartool describe总是返回相同的信息是正常的。李>
    • 如果它是扩展路径,正如我对%CLEARCASE_XPN% 所期望的那样,那么 %u 应该是与事件关联的用户(版本),而不是“元素所有者”

      %u
      

    与事件关联的用户的登录名。

    小记,我总是喜欢在%CLEARCASE_XPN% 周围使用双引号,以防路径文件名中有空格。

    -exec "cleartool describe -fmt ""%Lu\t%Fu\t%n\n"" \"%CLEARCASE_XPN%\""
    

    【讨论】:

      【解决方案2】:

      经过仔细检查,我上面发布的命令似乎已经足够了。我看到一堆相同的用户名,并认为它们都相同,但事实并非如此。对于我最初想要的相同元素的不同版本,我看到了不同的用户名。

      【讨论】:

        【解决方案3】:

        如果您在多站点 VOB 上工作,请不要忘记在另一个站点上创建的对象的所有者将是您站点上的 VOB 所有者。因此,如果仅在远程站点中创建和修改对象,则其所有树和版本都将归 VOB 所有者所有。 当然,我假设您对副本同步的身份处于非保留模式(有关模式信息,请参阅Changing preservation mode)。在大多数情况下,您不希望复制来保留身份,因为每个站点都有自己的一组用户。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2017-02-21
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2022-06-29
          相关资源
          最近更新 更多