【问题标题】:When was a clearcase snapshot view last updated?clearcase 快照视图上次更新时间是什么时候?
【发布时间】:2011-06-03 23:39:05
【问题描述】:

我想查找最后一次更新 clearcase 快照视图时的时间戳。我的意思是上一次“cleartool update”开始的时间。

或者,换一种说法,如果我要制作一个带有时间戳的动态视图,我应该使用什么时间戳使它与给定的快照视图完全等效?

我能想到的唯一方法是查找名为 update.[timestamp].updt 的日志文件,该文件在每次视图更新时写入快照视图目录的根目录。但在某些情况下,我无权访问此文件。还有其他方法吗?

下面的命令看起来很接近,但我不确定它是否是我想要的 -

ewat> cleartool lsview -prop -full ewatkins_11122_s_ewatkin4
  ewatkins_11122_s_ewatkin4 /scfs3/vws_u/ewatkins/ewatkins_11122_s_ewatkin4.vws
Created 19-Apr-11.23:42:13 by ewatkins.cdev@dscddy02
Last modified 02-Jun-11.16:28:45 by ewatkins.cdev@ewatkin4.us.oracle.com
Last accessed 02-Jun-11.16:28:45 by ewatkins.cdev@ewatkin4.us.oracle.com
Last read of private data 02-Jun-11.16:28:45 by ewatkins.cdev@ewatkin4.us.oracle.com
Last config spec update 25-Apr-11.15:50:13 by ewatkins.cdev@ewatkin4.us.oracle.com
Last view private object update 02-Jun-11.16:28:45 by ewatkins.cdev@ewatkin4.us.oracle.com
Text mode: unix
Properties: snapshot readwrite
Owner: arbor.hyperion.com/ewatkins : rwx (all)
Group: arbor.hyperion.com/cdev : r-x (read)
Other:                  : r-x (read)
Additional groups: arbor.hyperion.com/essbase_prerel

上述输出是在我进行快照更新后立即获取的。可以看到最后修改、最后访问、最后读取和最后更新都设置为快照更新完成的时间——02-Jun-11.16:28:45。

这一次不是我想要的。假设快照更新需要几分钟时间。如果我使用此时间戳创建动态视图,则动态视图将包含在更新运行的几分钟内签入的所有新文件。

除非我有 update.[timestamp].updt 文件,否则我会不走运吗?

【问题讨论】:

    标签: version-control clearcase snapshot-view


    【解决方案1】:

    我想我已经回答了我自己的问题——

    update.<timestamp>.updt 中的时间戳是“cleartool update”启动的时刻,但它是本地机器上的时间 - 这可能与 clearcase 服务器机器上的时间不同。
    例如,我的两台机器上的时间相差大约 3 分钟。所以这个时间戳不是我想要的。当然,我可以只使用 NTP 来同步时间,但我发现了其他有趣的东西......

    cleartool update”不更新“上次配置规范更新”时间。

    cleartool setcs -current”确实将“上次配置规范更新”时间更新到更新开始的那一刻。
    由于我们使用 Hudson 来管理我们的快照视图,并且 Hudson clearcase 插件可以使用setcs -current,所以我们很幸运!
    “上次配置规范更新”时间正是我想要的,甚至是 clearcase 服务器上的时间,而不是本地主机上的时间!

    【讨论】:

      【解决方案2】:

      根据我的测试,我认为您最终会得到比“最后一次配置规范更新”日期更新的任何版本(而最后修改日期是 entirely managed by the OS

      因此,您应该可以使用“上次配置规范更新”time-based rule 进行动态视图。

      请参阅 IBM 手册页“How snapshot views are updated

      更新操作说明更新不是即时的。随着您的视图更新,其他开发人员可能会签入您的视图的加载规则选择的新版本元素。为避免加载不一致的版本集,更新操作会忽略 VOB 中同时满足以下两个条件的版本:

      • 版本在更新开始后签入
      • 版本现在由包含 LATEST 版本标签的配置规范规则选择。

      此更新针对网络中不同主机上的系统时钟可能不同步(即时钟出现偏差)的可能性进行了调整。

      【讨论】:

      • 谢谢 - 这证实了我对更新如何工作的怀疑。但不幸的是,“最后一次配置规范更新”并不能解决问题。我们使用 Hudson 来管理我们的构建过程,因此配置规范只是偶尔更改,而“ct update”则经常运行。您可以在上面的文本中看到一个示例 - “最后一次配置规范更新”是 4 月 25 日,但最后一次“ct 更新”是在 6 月 2 日。还有其他想法吗?
      • @Ewat:您需要一个脚本:a/ 记住上次更新日期,b/ 通过cleartool update 执行更新。然后,您可以将该信息用于基于时间的动态视图。但是您不会直接从 ClearCase 中找到“最后更新日期”。
      • 谢谢!听起来不错。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-11-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多