Clearcase findmerge 不产生任何输出

Clearcase findmerge producing no output

我正在尝试将我的开发分支与父分支合并到我正在工作的分支。我没有图形化的 ClearCase,我只有命令行。我正在使用 Solaris-10。

当我对文件执行 lsvtree 时,我看到的最后 3 个结果是:

filename@@/main/release2/10 (PROD_REL2.0, PROD_REL2.1, PROD_REL2.2, ...)
filename@@/main/release2/myprivateview
filename@@/main/release3/myprivateview/1

当我对文件进行描述时,我得到:

version "filename/@@/main/release3/myprivateview/1"
...
predecessor version: /main/release3/myprivateview/0

我想将我的更改合并到主分支中,以便其他用户可以看到我的更改。 我试过了:

cleartool findmerge -all -fver /main/release2/LATEST -print
cleartool findmerge -all -fver /main/release2/10 -print
cleartool findmerge filename -fver /main/release2/LATEST -print
cleartool findmerge filename -fver /main/release2/myprivateview/0 -print

以及其他各种组合。

发生的事情是它思考了一会儿然后打印...什么也没有。没有错误消息,也没有合并列表,也没有冲突,什么也没有打印出来。

我已经检查过我的视图是动态的。我做错了什么?

每当你做一个merge或者findmerge的时候,你需要在一个视图集中这样做以反映destination分支(这里是主分支,这似乎是给你的release3 )

因此设置另一个用于合并的动态视图:

element * CHECKEDOUT
element * .../release3/LATEST
element * /main/0 -mkbranch release3
element * /main/LATEST -mkbranch release3

此处,release3 将是目标分支,即您要合并的分支

在该视图中,再次尝试 findmerge command

请注意,as I explained here,您需要先找到合并(并合并)您的 文件夹 ,然后才是您的文件。

谢谢@VonC 的建议。
我不知道如何使用您上面提到的配置规范创建新视图。
但是我发现根本不需要创建任何新视图:我所要做的就是更改我自己的视图以指向我想要更改的分支级别。

我做的是:

1) $ cleartool edcs
2) save the config specs that were displayed somewhere else
3) edit the file to look like this:
     element * CHECKEDOUT
     element * .../release3/LATEST
     element * /main/LATEST -mkbranch release3
4) $ exit (to reload the view with the new config specs, not sure if this was necessary)
5) $ cleartool setview myprivateview
6) $ cleartool findmerge filename -fver /main/release3/myprivateview/1 -print
7) $ cleartool findmerge filename -fver /main/release3/myprivateview/1 -merge
8) cleartool ci filename
9) cleartool edcs
10) replace config specs as they were before`

这完全按照我想要的方式执行了合并,这些步骤将用于合并到任何级别,而无需创建任何视图。