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`
这完全按照我想要的方式执行了合并,这些步骤将用于合并到任何级别,而无需创建任何视图。
我正在尝试将我的开发分支与父分支合并到我正在工作的分支。我没有图形化的 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`
这完全按照我想要的方式执行了合并,这些步骤将用于合并到任何级别,而无需创建任何视图。