hfs*_*hfs 5 perforce branch branching-and-merging
我在Perforce存储库中有以下分支情况:主线"主干"和两个发布分支"1.0"和"1.1".具有客户特定变化的分支"客户"已经从1.0分支分支出来.现在,客户希望转向1.1版.如何将1.1分支合并到客户分支?客户特定的更改应保持在1.1的"顶部".
这是一个受影响文件的图表:
1.1 -(1)---(2)---(3)
/ \ \
/ \ \
trunk 100--(101)-(102)--103---104---105---106---107
\
\
1.0 ---1-----2--...
\
\
customer ---1-----2----*3*
Run Code Online (Sandbox Code Playgroud)
我正在查看的文件的当前版本是客户分支上的修订版3.
如果我选择将分支"1.1"与目标"客户"集成,我会期望找到两者的共同祖先(主线上的修订版100),并且从那里导致1.1分支的尖端的所有修订被合并(那些在括号内).
相反,Perforce仅提供合并1.1分支的修订版1到3,但由于它错过了之前在主线上发生的必要更改而失败.
如何在不必手动查看每个文件并选择要合并的修订版的情况下说服Perforce执行此操作?也许分支策略不合适?我还该怎么办?
为了使集成变得容易,我将创建一个特定的分支 trunk_to_custer 和 1.1_to_customer,然后发出:
cd customer-workspace
p4 integ -b trunk_to_customer @change-number-at-which-1.1-was-branched
p4 resolve
Run Code Online (Sandbox Code Playgroud)
也许中间提交在这里,然后
p4 integ -b 1.1_to_customer
p4 resolve
p4 submit
Run Code Online (Sandbox Code Playgroud)