perforceperforce-stream

Create Release Stream in Perforce from Main stream with imported files


So, I use Perforce as a SW repository, and I'm required to create a "release" stream from my "mainline" stream. The requirement for the "release" stream is that its content should be enough to compile and run the SW.

However, there are files that are imported into this "mainline" stream from other projects (which are also managed in Perforce), and these change a lot over time. The "release" stream needs a snapshot of those files as they are.

I tried going to the stream view and creating a "new stream" from the "mainline" stream, but once the imported files got imported on the external projects, doing a get latest on the "release" stream downloads the imported files on their current version, not on the version when the release was created.

Some files are large and binary, so I'd like to avoid doing a manual copy and saving everything in duplicate.

Does anyone know how to freeze the version of imported files in a "release" stream on Perforce?


Solution

  • You will need to copy all of the imports into the release stream (at the time you create it) rather than inheriting them from the parent. Alas! Make sure to specify @CHANGE on the import paths to lock them at the current changelist level, if that's needed.