Reparenting Streams and Workspaces

AccuRev lets you change the backing stream (parent stream) of any dynamic stream or workspace. The StreamBrowser makes it simple: you just drag-and-drop a stream or workspace from its current location in the hierarchy to its new parent.

The entire subhierarchy moves to the new location. Changing a data structure's location in the stream hierarchy is called reparenting. If the StreamBrowser display contains many streams or the stream structure is very complex, an alternative method of reparenting a stream is to select Reparent from the context menu of the stream or workspace, then navigate to and click the new parent stream. You are asked to confirm the operation.

Tip: After you change the location of a workspace, AccuRev prompts you to update it. Updating ensures that the workspace contains the correct set of versions, many of which it will inherit from its new parent. Likewise, after changing the location of a stream, make sure you update all the workspaces in the subhierarchy below that stream.

Certain types of streams are subject to rules regarding reparenting:

Snapshots You cannot reparent a snapshot; both the contents and the parentage of snapshot are fixed permanently.
Exclusive file locking workspaces You cannot reparent (or change any of the other specifications) of a workspace created with the exclusive file locking feature.
Time-based streams If you reparent a time-based stream, AccuRev asks whether you wish to retain the basis time or remove it.
Staging streams You cannot reparent staging streams. You can reparent the gated stream it is associated with, however.

Reconfiguring a Stream

Using the drag-and-drop operation changes the stream’s parent. To change other stream values (like its name or basis time, for example), use the Change Stream command on the stream context menu.

Although you can give a new name to an existing stream, you cannot proceed to create a new stream with the old name. The old name remains associated with its stream. The only way to reuse a stream name is to completely remove the stream's depot from the AccuRev repository, using the AccuRev administration utility, maintain.

Setting or Changing a Stream's Basis Time

By default, a stream inherits all versions from its parent, no matter when those versions were created. If you assign a basis time to a stream, it inherits only those versions created before the specified point in time. (The File Browser's include/exclude facility provides another way to restrict which versions get inherited from the parent stream.)

Creating New Streams, Snapshots, and Workspaces

The context menu of any data structure in the StreamBrowser includes commands for creating new structures at that point in the hierarchy. New Stream and New Snapshot display dialogs similar to that of Change Stream. The New Workspace command invokes a wizard that steps you through the process of defining a new workspace: you specify a name and a location on disk; you can also make some optional settings, such as controlling how line endings in text files are to be handled.