Perforce and `p4 diff2' against the origin
Julian Elischer
julian at elischer.org
Tue Apr 8 17:34:49 UTC 2008
John Baldwin wrote:
> On Monday 07 April 2008 02:31:59 pm Ed Schouten wrote:
>> Thanks everyone for your replies. I think I should spend some time at
>> the office trying the solutions to see what's the easiest way.
>>
>> I'm just a little bit disappointed by the fact that p4 doesn't have some
>> kind of switch for diff2 to do this by default. It should already keep a
>> list of such relations internally to make integrations and such work.
>>
>> Is there a way for us to submit feature requests at Perforce?
>
> Well, it's not quite that simple because p4 lets you do things like cherry
> pick revisions (I want to merge revisions 1-4 and 7 into foo.c but not 5 and
> 6 yet.. in that case, what should it diff against, #4? #7? #7 with #5 and
> #6 backed out somehow (what if that has conflicts?)?) and merge from
> different paths into the same file. So for example if I had this:
>
> //depot/foo.c
> //depot/bar.c
> //depot/baz.c
>
> and I merged foo.c#1-#2 into bar.c and foo.c#1 into baz.c. Then suppose I
> merge bar.c into baz.c (thus carrying the changes in foo.c#2 into baz.c). If
> I diff foo.c against baz.c should it diff against #1 or #2?
>
> The reason you have a good answer for what to merge in your case is because it
> is a degenerate case and while that one may seem obvious a general purpose
> solution is not as obvious. The other thing to recall is that if you were
> just using p4 w/o HEAD in CVS you wouldn't generate patches in the first
> place. Instead, you would use 'p4 integ -r' to merge changes from your
> branches up into HEAD. I do this at work where all out stuff lives in p4 and
> don't really use patches much anymore except to review before a submit (so I
> would do 'p4 integ -r -b foo_feature; p4 resolve -a; p4 diff -du ... | less;
> p4 submit'). Thus, we use p4 in a bit of an odd way since HEAD is in CVS and
> if you use it as it is designed to be used patches aren't all that important,
> hence they aren't going to focus as much effort on it.
>
the new p4 interchanges command may be relaqvent to this discussion...
I haven't used it yet but it seems relevant.
More information about the freebsd-hackers
mailing list