Helix Core is now P4. Product user interfaces will be updated soon. Learn more >>

P4 CLI Documentation | 2025.2

# Update streams

As part of maintaining your stream spec, you might:

- modify the paths of the stream to:

  - change the version of an included library by modifying the target of an `import` path
  - change the scope of a path to widen or narrow the scope included
- Change restrictions on who can submit to the stream

New in 2019.1 and recommended | Prior to 2019.1 and still supported
--- | ---
Use the Private editing of streams feature of p4 stream. This includes the -So, -Si, or -Sx options of p4 edit, p4 submit, p4 revert, and p4 resolve. These options give you control of when your changes will affect other users. We recommend that you: isolate your work in progress so that other users of the stream are not impeded make edits to the stream spec visible through a changelist (see Changelist reporting) | use the ``p4 stream`` command, which immediately updates all workspace views derived from that stream

In addition to the files being shelved, `p4 shelve` also shelves any open stream specification.

To shelve only the stream spec, use `p4 shelve -As`

In addition to the files being unshelved, `p4 unshelve` also unshelves any open stream specification.

To unshelve only the stream spec, use `p4 unshelve -As`

## Edit a stream

Recommended | Still Supported
--- | ---
p4 edit -So | p4 stream edit
Puts your client’s stream spec into the "opened" state, isolating any edits made to fields that affect view generation. While the spec is open, these fields are marked with the comment "#open" to indicate that they are open and isolated to your client. Changes made to these fields affect your client’s view only. Other clients' views are not affected.

## Resolve a stream

Recommended | Still Supported
--- | ---
p4 resolve -So | p4 stream resolve
Resolves changes that have been submitted to the stream spec since you opened it. You cannot submit changes to the stream spec until newer changes have been resolved.

## Revert a stream

Recommended | Still Supported
--- | ---
p4 revert -So | `p4 stream revert` reverts any pending changes made to the open stream spec, returning your client to the latest submitted version of the stream.
Reverts any pending changes made to the open stream spec, returning your client to the latest submitted version of the stream.

## Shelve or unshelve a stream

p4 shelve and p4 unshelve affect not just files but also any open stream specification.

Your search for returned results