【问题标题】:How do I undo mergeouts on a branch in clearcase?如何在 clearcase 中撤消分支上的合并?
【发布时间】:2020-01-29 22:18:42
【问题描述】:

背景

我的情况是,为了干净利落地推广代码,必须以协调的方式对具有一定数量的视图进行分支:

/some/dir/here@@/main/dev/view_dev__456_textDescription
/some/dir/here/file.txt@@/main/dev/view_dev__456_textDescription
/some/dir/here@@/main/dev/prod1/view_prod1_dev__456_textDescription
/some/dir/here/file.txt@@/main/dev/prod1/view_prod1_dev__456_textDescription

特定产品的每个视图都必须从其产品分支分支出来。

问题

我不小心创建了一个特定于产品的视图,但在开发分支之外。以下是我现在的情况:

/some/dir/here@@/main/dev/view_dev__456_textDescription
/some/dir/here/file.txt@@/main/dev/view_dev__456_textDescription
/some/dir/here@@/main/dev/view_prod1_dev__456_textDescription <-- The erroneous branch
/some/dir/here/file.txt@@/main/dev/prod1/view_prod1_dev__456_textDescription

尝试的解决方案

我尝试了这个命令来摆脱错误的分支:

ct rmbranch /some/dir/here@@/main/dev/view_prod1_dev__456_textDescription

但是我收到了这个错误:

...
Checking for mergeouts on branch [view_prod1_dev__456_textDescription] ...
ERROR: Cannot delete a WI branch that has mergeouts
cleartool: Warning: Trigger "TRG_PRE_RMBRANCH" has refused to let rmbranch proceed.
cleartool: Error: Unable to remove branch "/some/dir/here@@/main/dev/view_prod1_dev__456_textDescription"

基于错误,我需要摆脱这个分支的合并。因此我的问题...

问题

如何撤消特定 clearcase 分支的合并?

【问题讨论】:

    标签: merge clearcase


    【解决方案1】:

    假设这里是基本 ClearCase,您对某个文件执行 ct lstree --graph 以查看它们是否合并到其他分支版本。

    即:检查您是否看到红色箭头,如“Find all unmerged files/elements in ClearCase”所示。
    该答案包括一个 cleartool find ,它将为您提供两个分支之间的所有合并元素。

    对于该合并中涉及的每个元素版本(再次假设基本 ClearCase),您可以:

    • describe that version 并找到来自它的合并超链接。
    • 执行cleartool rmhlink Merge@xxxxx@/vobs/yourvob,删除所述超链接。

    一旦不再有来自view_prod1_dev__456_textDescription 的合并超链接,TRG_PRE_RMBRANCH 就不应再阻止rmbranch

    参见cleartool rmhlink,以及上一个问题:“How do I search for specific kinds of merge hyperlinks in ClearCase?”。

    【讨论】:

    • 我的想法是 OP 需要联系他们的 CC 管理员,以确保根据他们的流程这是可以接受的。您可以这样做,但如果这是一个受到严格监管的行业,删除开发历史可能会导致监管审计出现问题。您可能还会发现 rmhlink 操作被触发器阻止。
    • @BrianCowan 我同意:任何涉及rmverrmhlink 的事情都需要仔细审查。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-04-10
    • 2021-06-26
    • 2017-09-06
    • 1970-01-01
    • 1970-01-01
    • 2019-03-17
    • 2021-04-02
    相关资源
    最近更新 更多