PTC完整性检查未更改的文件

时间:2013-03-14 06:29:19

标签: mks mks-integrity

在使用CLI调用通过脚本测试PTC完整性的性能时,我们执行以下操作 我们正在尝试创建项目的不同版本并收集这样做的时间。为此,项目的不同版本(内容)可在单独的文件夹中找到 该脚本执行以下操作 - 锁定项目是否

  

si lock --yes --recurse --cpid =:bypass

  • 删除沙箱的内容,但.pj文件除外
  • 将下一个版本内容从相应的本地副本复制到沙箱。这模拟了对沙箱中某些工件的更改。
  • 查找丢失的文件,将其收集到阵列中
  

si viewsandbox --batch --yes --recurse --sandbox = path \ project.pj --filter = changed:missing --fields = name

  • 遍历上面的数组并删除每个成员
  

si drop --cpid =:bypass --yes --batch --sandbox = path \ project.pj each_member

  • 签入所有“已更改”的成员/文件
  

“si ci --recurse --nocheckinUnchanged --filter = changed:working --nounexpand --cpid =:bypass --sandbox = path \ project.pj --description =”test“

  • 查找非会员,以arrat收集
  

si viewnonmembers --batch --yes --recurse --fields = absolutepath --sandbox = path \ project.pj --cwd = path

  • 遍历数组并添加每个非成员
  

si add --createSubprojects --nounexpand --batch --cpid =:bypass --sandbox = path \ project.pj each_non-member

  • 解锁
  

si unlock --action = remove --yes --recurse

  • 创建检查点。
  

si checkpoint --yes --sandbox = \ project.pj --label = LabelName --description =“test”

以上步骤针对我需要创建的此类项目版本的数量。

在项目政策中,设置“按Reference = true存储文本” 完整性版本为10.

现在我的问题。 :对于我通过上述步骤创建的项目的每个版本,它正在为所有文件创建一个新版本,无论它是否被更改。当查看此类文件的成员历史记录时,它不会显示创建的两个版本之间的任何差异。你遇到过这个问题吗?

2 个答案:

答案 0 :(得分:0)

这是因为您删除了沙盒中的所有文件。新文件具有不同的时间戳,因此PTC将其视为新文件。 PTC没有真正的DIFF,afaik它只检查时间戳(最后一次更改)。

我能想到的只是删除已更改的文件。

答案 1 :(得分:0)

您可以配置沙箱以校验和检查差异。enter image description here

默认情况下,您的管理员可以为所有沙箱设置。