The mkstream command creates a stream for use with a UCM project. A stream consists of a name, a set of baselines that configure the stream, and a record of the set of activities associated with the stream.
There are two kinds of streams with UCM projects:
To create an integration stream, you must specify its project. Note that a project's integration stream must be present before a development stream can be created.
To create a development stream, you must specify a stream as its parent. Specifying a project is equivalent to specifying the project's integration stream. By default, the development stream delivers to the integration stream and rebases from recommended baselines of the integration stream. If you specify a development stream as its parent, the stream becomes the child of that development stream and delivers to and rebases from its parent.
Optionally, you can assign the stream a set of foundation baselines. Foundation baselines specify a stream's configuration by selecting the file and directory versions that are accessible in the stream.
Streams are accessed through views (see mkview –stream). A stream can have more than one view attached to it.
You can set or unset policies for integration streams or development streams. Note that the project's policy settings take precedence over the stream's settings, unless –spolicy is used in the project to allow individual streams to control the policy. Table 1 describes these policies and lists the keywords used to set them. For more information about setting policies, see the IBM Rational ClearCase Guide to Managing Software Projects.
To provide some users with read-only access to a set of baselines, you can create a special type of development stream with the option –readonly. You cannot deliver to or from this stream, but you can rebase it. Read-Only streams are not restricted by the normal rebase rules. In the view attached to a Read-Only stream, you can create DOs and other view-private files, but you cannot make any changes to components.
To create a read-only stream, your UCM VOBs and PVOBs must be at feature level 3 or greater.
project-selector is of the form [project:]project-name[@vob-selector], where vob-selector specifies the project's project VOB.
stream-selector is of the form [stream:]stream-name[@vob-selector], where vob-selector specifies the stream's project VOB.
baseline-selector is of the form [baseline:]baseline-name[@vob-selector], where vob-selector specifies the baseline's project VOB.
The following restrictions apply to the specified baselines:
stream-selector is of the form [stream:]stream-name[@vob-selector] and wherevob-selector specifies the project VOB of a different project.
You can specify the stream as a simple name or as an object selector of the form [stream:]name@vob-selector, where vob-selector specifies a project VOB (see the cleartool reference page). If you specify a simple name and the current directory is not a project VOB, this command assumes the stream resides in the project VOB that is associated with the current view. If the current directory is a project VOB, that project VOB is the context for identifying the stream.
The stream name must be unique within the PVOB. All UCM objects share the same namespace. You will get an error if the name you provide collides with the name of an existing UCM object, for example, a project.
The UNIX system and Linux examples in this section are written for use in csh. If you use another shell, you may need to use different quoting and escaping conventions.
The Windows examples that include wildcards or quoting are written for use in cleartool interactive mode. If you use cleartool single-command mode, you may need to change the wildcards and quoting to make your command interpreter process the command appropriately.
In cleartool single-command mode, cmd-context represents the UNIX system and Linux shells or Windows command interpreter prompt, followed by the cleartool command. In cleartool interactive mode, cmd-context represents the interactive cleartool prompt.
cmd-context mkstream –in webo_proj1@\webo_pvob \
chris_webo_dev@\webo_pvob
Created stream "chris_webo_dev".
cmd-context mkstream -integration -in webo_proj1 integration@\webo_pvob
Created stream "integration".
cmd-context lsproject –invob /vobs/webo_pvob
2007-03-01T16:31:33 webo_proj1 ktessier "webo_proj1"
2007-06-05T12:31:33 webo_proj2 ktessier "webo_proj2"
cmd-context mkstream -in webo_proj1@/vobs/webo_pvob \
–baseline BL3@/vobs/webo_pvob chris_webo_dev@/vobs/webo_pvob
Created stream "chris_webo_dev".
cmd-context mkview -stream chris_webo_dev@/vobs/webo_pvob \
-tag chris_webo_dev /export/views/chris_webo_dev.vws
Created view.
Host-local path: venus:/export/views/chris_webo_dev.vws
Global path: /net/venus/export/views/chris_webo_dev.vws
It has the following rights:
User : chris : rwx
Group: user : rwx
Other: : r-x
Attached view to stream "chris_webo_dev".
cmd-context mkview -stream integration@/vobs/webo_pvob \
-tag webo_integ /export/views/webo_integ.vws