1 message in com.perforce.perforce-user[p4] Does "Reverse Integration" reall...| From | Sent On | Attachments |
|---|---|---|
| Rob Jellinghaus | 14 Jul 2000 14:06 |
| Subject: | [p4] Does "Reverse Integration" really do anything?![]() |
|---|---|
| From: | Rob Jellinghaus (Rob....@quokka.com) |
| Date: | 07/14/2000 02:06:41 PM |
| List: | com.perforce.perforce-user |
OK, I have now established that I am definitely confused by Perforce's integration behavior.
I established one mainline test directory and one branch test directory: //depot/test_data/test/mainline/... //depot/test_data/test/branch/...
with a branch spec reading (of course) //depot/test_data/test/mainline/... //depot/test_data/test/branch/...
I created two files in mainline, foo.txt and bar.txt. Submitted. Integrated with the branch spec. Submitted. Edited foo.txt in the mainline, and bar.txt in the branch. Submitted.
Now, when I do an integrate (via p4win), *whether or not I have the "reverse integration" checkbox checked*, I get:
STATUS: Integrate preview: //depot/test_data/test/branch/foo.txt#1 - integrate from //depot/test_data/test/mainline/foo.txt#2 STATUS: Integrate preview: //depot/test_data/test/mainline/bar.txt#1 - integrate from //depot/test_data/test/branch/bar.txt#2
In other words, the setting of the "reverse integration" checkbox seems to make *no difference whatsoever* to the behavior of the integrate operation.
So, what am I missing here??? It seems that "integrate" effectively always means "bring all changes from one branch into the other, *and* vice versa." I naively always expected that a forward integrate would simply bring all changes from the source branch into the destination, but *not* the other way around; and likewise that a reverse integration would simply bring all changes from the destination branch to the source, but *not* the other way around.
The Perforce documentation is obtuse on this point, or else I haven't read the right section of it with the right pair of glasses on....
p4win gui transcript appended. All clues appreciated. Cheers, Rob
STATUS: add //depot/test_data/test/mainline/bar.txt#1 STATUS: add //depot/test_data/test/mainline/foo.txt#1 ===> Change 1514 submitted STATUS: //depot/test_data/test/branch/bar.txt#1 - branch/sync from //depot/test_data/test/mainline/bar.txt#1 STATUS: //depot/test_data/test/branch/foo.txt#1 - branch/sync from //depot/test_data/test/mainline/foo.txt#1 ===> Opened 2 files for integrate STATUS: Locking 2 files ... STATUS: branch //depot/test_data/test/branch/bar.txt#1 STATUS: branch //depot/test_data/test/branch/foo.txt#1 ===> Change 1515 submitted ===> Opened 1 files for edit ===> Opened 1 files for edit STATUS: Locking 2 files ... STATUS: edit //depot/test_data/test/branch/bar.txt#2 STATUS: edit //depot/test_data/test/mainline/foo.txt#2 ===> Change 1516 submitted STATUS: Integrate preview: //depot/test_data/test/branch/foo.txt#1 - integrate from //depot/test_data/test/mainline/foo.txt#2 STATUS: Integrate preview: //depot/test_data/test/mainline/bar.txt#1 - integrate from //depot/test_data/test/branch/bar.txt#2 ===> Integrate preview completed




