Merging Down and Copying Up Between Streams

Before changes made in a less stable stream can be copied up to its more stable child or parent, any changes in the more stable stream must be merged down to the less stable.

In the Stream graph, status indicators between streams tell you which streams have changes to contribute and where the changes can be copied or merged:

Merge indicator:

Copy indicator:

The arrows are color-coded to indicate status:

  • Gray: no merge or copy required

  • Green: a merge or copy operation is available

  • Orange: stream must be updated, after which merge or copy is available

For example, the following arrows above the dev-2.1M2 stream indicate that you must update it by merging down from its parent, after which you can copy up changes to the parent.

When you double-click a stream in the Stream graph, a pop-up displays copy and merge information, along with links to the Merge/Integrate and Copy dialogs.

Merge down

To merge changes down to a less stable stream:

  1. In the Streams tab, context-click the target stream and choose Merge/Integrate to target_stream... or double-click and choose Merge changes.

    When you merge down or copy up, you must be working in the target stream.

  2. If prompted, select or create a workspace for the target stream.

    The Merge/Integrate dialog is displayed. Verify that the correct source and target streams are specified.

    For more information about the Merge/Integrate dialog, see Merging Files Between Codelines.

  3. (Optional) To specify how the merge is to be resolved, click Resolve and Submit.

    To enable specific p4 resolve flags, click Advanced.

  4. Click Merge.

    If necessary, resolve the merges manually, then submit the resulting changelist.

Copy up

When you copy changes up to a more stable stream, you are propagating a duplicate of the less stable stream.

To copy changes up to a more stable stream:

  1. In the Streams tab, context-click the target stream, or double-click the stream and select Copy changes.

    If prompted, select a workspace for the target stream.

    When you merge down or copy up, you must be working in the target stream.

  2. In the Copy dialog, review the propagation information or refine the operation using the options on the Filter, Submit, and Advanced tabs.

  3. To propagate changes to the more stable stream, click Copy and submit the resulting changelist.

Propagate change between unrelated streams

To propagate change between streams that are not directly connected, click the Browse button on the Merge or Copy dialog, then click the Display all streams link and choose the desired source.

You can also reparent a stream to create the relationship. To reparent a stream in the Stream graph, drag the stream to the new parent stream.

Note

You cannot merge or copy changes to unrelated task streams.