gpt4 book ai didi

clearcase - ClearCase 中的配置规范

转载 作者:行者123 更新时间:2023-12-01 12:37:40 27 4
gpt4 key购买 nike

我有一个关于 ClearCase 的小问题。请帮帮我!配置规范什么时候开始起作用?当我单击 CHECK OUT 或 CHECK IN 时?我有 test.c 和配置规范

element * CHECKEDOUT
element * .../branch_1/LATEST
element * /main/LATEST -mkbranch branch_1

然后我修改test.c,然后我更改配置规范:

element * CHECKEDOUT
element * .../branch_2/LATEST
element * /main/LATEST -mkbranch branch_2

然后我 checkin test.c 并创建了 /main/branch_1/1。但是为什么???

最佳答案

配置规范将在每次更新、 checkout 和 checkin 时应用规则(但不是您想象的那样)。

checkin 时,新版本将在 checkout 的分支中创建(此处为 branch_1)。
新配置规范可能不会选择该新版本,但新配置规范不会更改已 check out 的分支。

branch2 中更改 branch1test.c 已经 checkout (在 branch1) 不会改变任何东西。它将在 branch_1 中 checkin 。

现在您将在 branch1 上为 test.c checkin 创建一个版本(即使使用您的第二个配置规范),您需要意识到所有 future 的 checkout / checkin 将在 test.c 的同一分支上进行,因为:

  • 规则 element * branch_1/LATEST 将在该分支上保留新版本
  • 规则 element */main/LATEST -mkbranch branch_2 仅对从 main checkout 的版本有效(并且 test.c 不再位于 /main 上,它在 branch1 上:/main/branch1)

此配置规范将确保所有新版本(在 branch1 上首次 checkin test.c 之后)都在 branch2 上完成:

element * CHECKEDOUT
element * .../branch_2/LATEST
element * ../branch_1/LATEST -mkbranch branch_2
element * /main/LATEST -mkbranch branch_2

规则的顺序很重要,因为第一个可以应用的规则“获胜”(即忽略其他规则)。
请参阅“Config Spec to display labeled files from 2 branches”中的配置规范的具体示例。


请注意,在第一次 checkin test.c 后,您将在 branch1 上创建一个新版本,如前所述。

但是您的第二个配置规范将选择 /main/1,而不是 /main/branch1/1

那是因为您的第二个配置规范中的规则不正确:

element * branch_1/LATEST

这个会选择正确的版本:

element * .../branch_1/LATEST

但是,如果您的第二个配置规范没有关于 branch1 的规则,test.c 仍将被选为 /main/1:那里没有在 branch2 上创建版本,因此 element */main/LATEST唯一可以应用的规则。

关于clearcase - ClearCase 中的配置规范,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16000958/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com