Search code examples
perforceperforce-integrate

Integrating moved files in perforce


Say I created a branch in perforce of our codebase. Here is the branch spec:

//depot/code/main/... //depot/code/branch/...

Then, in the branch, say I move the branched file a.txt -> b.txt using

p4 integrate //depot/code/branch/a.txt //depot/code/branch/b.txt
p4 delete //depot/code/branch/a.txt

Now, let's say some changes are made to a.txt in main which I would like to have integrated into b.txt in the branch

When I try to integrate using the original branch spec, it doesn't reflect the changes made to a.txt in main onto b.txt - is there any way to have the changes made in main show up in the renamed file?

The branch spec is rather large (hundreds of changes) and quite a few files were renamed in the branch, so I'd like to have an automated way to do this. Let me know if I can clarify anything here -- it would help to have a whiteboard ;)

Thanks! Sam


Solution

  • Perforce 2009.1 has proper renames, which might help with this - probably, and in any case only for future renames. See Perforce 2009.1 release notes, in particular:

    #177023 * **
        The new 'p4 move' command allows for better support for
        renaming files.  A file must be already opened for 'edit'
        or 'add' in order to be moved.  Moved files can be synced,
        resolved and diffed against the repository just like files
        opened for 'edit'.  See 'p4 help move' for more info.
    

    You can add the rename into the branch spec. Then at least the integrations will be automatic - even if the branch spec will be even longer and more complicated.