0

在使用 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 解锁 --action=remove --yes --recurse

  • 创建检查点。

si 检查点 --yes --sandbox=\project.pj --label=Lab​​elName --description="test"

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

在项目策略中,设置了“按引用存储文本=true”。
完整性版本为 10。

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

4

2 回答 2

0

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

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

于 2014-02-22T22:09:52.737 回答
0

您可以将沙箱配置为通过校验和检查差异。在此处输入图像描述

这可以/应该由您的管理员默认为所有沙盒设置。

于 2016-05-10T08:23:13.800 回答