Perforce: How to integrate multiple branches?

I have the following situation with branches in the Perforce repository: Theres mainline "trunk" and two release branches "1.0" and "1.1". The client branch with specific client changes was forked with 1.0 branch. Now the client wants to upgrade to version 1.1. How can I merge 1.1 branch into client branch? Specific customer changes should remain “on top” 1.1.

Here is a chart for one affected file:

1.1                      -(1)---(2)---(3)
                        /           \     \
                       /             \     \
trunk   100--(101)-(102)--103---104---105---106---107
           \
            \
1.0          ---1-----2--...
                 \
                  \
customer           ---1-----2----*3*

The current version of the file Im look on is version 3 in the client branch.

If I want to integrate the 1.1 branch with the target client, I would expect a common ancestor of both to be found (version 100 on the main line), and all the changes from there leading to the end of the 1.1 branch are combined (in brackets).

Perforce 1 3 1.1, , , .

Perforce , ? , ? ?

+5
3

, 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

submit here,

p4 integ -b 1.1_to_customer 
p4 resolve
p4 submit
0

3 1.1, Perforce , , 1 1012. Perforce 100 .

, , , . , ( ), p4 interchanges?

+2

. , , 2.0 + .

If you do not want client changes reflected in your main project, take the time to rebuild the code so that you can expose the desired client behavior to the build flag or create a configuration file. Have both build configurations running in CI to ensure that future changes do not interfere with client collection.

+2
source

All Articles