[p4] Identifying an integrated change that was backed out

P4Sam perforce-user-forum at forums.perforce.com
Fri May 3 20:55:01 PDT 2013

Posted on behalf of forum user 'P4Sam'.

With the newest (engine=3) version of integrate you can do this by copying from
an old rev (i.e. a point on another branch which does not contain the change you
want to get rid of).  Here's an example:

Posted Image

In this scenario, main#2 has been integrated into dev#1, and then later we
decided that we want to roll dev back to main#1, so we've forced a copy from
that revision.

Observe that with the old engine (-2), main#2 is still considered to be
integrated (because it was integrated at some point in the past), but with the
new engine (-3), we recognize that the change has been rolled back and is
therefore once again a candidate for integration:

integ -2n main dev main - all revision(s) already integrated.
integ -3n main dev //depot/j/rollback/ReBaseDev/dev#3 - integrate from
(With the old engine there are actually some cases where this will work, but
only "by accident", so once upon a time there were cases of users
making use of the "accidental" feature and then running into problems
when they hit situations where the stars were no longer correctly aligned to
have it work the way they wanted -- one of the many goals for development of the
new engine was to support this type of usage intentionally and consistently.)

Please click here to see the post in its original format:

More information about the perforce-user mailing list