【问题标题】:Issue with clearcase branch per task strategy每个任务策略的 clearcase 分支问题
【发布时间】:2013-10-30 03:25:49
【问题描述】:

我在 clearcase 中的每个任务策略的分支存在问题。
我们正在使用快照视图。我们有各种任务分支和一个集成分支。
因此,我们将分支合并到集成进行测试。

现在,假设我正在处理 BR1 上的一个文件,该文件已合并到集成分支,并且该文件引用了另一个未合并到集成分支但 BR2 的文件,第二个文件已合并到集成分支。

因此,第二个文件指向该文件的 BR2 版本,而我不想要这些更改,但由于我从集成分支中获取所有其他代码,因此它采用该版本。

这是我的配置规范:

element * CHECKEDOUT
element * .../BR1/LATEST
element * .../integration/LATEST -mkbranch BR1
element * /main/LATEST -mkbranch integration
element * /main/0 -mkbranch integration

有什么办法解决吗?我能想到的一种方法是放置一个标签,将配置规范更改为从该标签中选择,而不是从最新的集成分支中选择,但是随着任务分支中工作的进展,这需要更改标签。还有其他方法吗我们可以这样做吗?

【问题讨论】:

    标签: branch task clearcase branching-strategy


    【解决方案1】:

    集成分支是用来集成的,所以如果你在那个分支上工作,我真的建议你把这些文件所有

    如果问题仅针对一个文件,您只需尝试“cherry-pick”方法,然后在当前 BR1 分支中签出该文件,将其内容替换为您想要的任何其他版本(例如with a cleartool get ,详见“Clearcase command to export an element”)。

    考虑到您的配置规范,我建议:

    • 在将BR1 合并到Integration 之后添加标签“L_BR1”,
    • 选择最新的集成标签(包含从BR2 合并的版本)

    这意味着配置规范如下:

    element * CHECKEDOUT
    element * .../BR1/LATEST
    element * .../integration/L_BR1 -mkbranch BR1    <=== add this select rule
    element * .../integration/LATEST -mkbranch BR1
    element * /main/LATEST -mkbranch integration
    element * /main/0 -mkbranch integration
    

    警告:但请注意,它在交叉集成中效果不佳(当您将 BR1 合并到集成时,然后是 BR2,然后 再次 BR1

    【讨论】:

    • 一个文件不是问题。它在 BR1 上的数百个文件不希望 BR2 的更改已合并到集成分支? .Issue 用于处理特定任务,我真的不想从已合并到集成分支的其他分支中进行更改。希望你得到我的关心?
    • @user2636464 那么您为什么要查看集成分支上的文件,因为根据定义,它们与其他问题集成,因为它是一个 集成 分支?跨度>
    • @user2636464 您可以使用配置规范编辑您的问题。
    • @user2636464 你的标签方法有优点。我已经编辑了我的答案来说明它。
    • 警告:但请注意,它在交叉集成中效果不佳(当您将 BR1 合并到集成,然后是 BR2,然后再合并到 BR1 时)”能否通过移动无法解决问题就在我们要对 BR1 进行新的合并之前的标签?
    猜你喜欢
    • 1970-01-01
    • 2021-10-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-13
    • 2018-10-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多