IPnom Home • Manuals • ClearCase

 Rational ClearCase Commands Reference

ClearCase Stuff:ClearCase LinksClearCase BooksClearCase Commands ReferenceClearCase ForumsClearCase News
Keyword Live Search (10 results max):
 Type in part of a ClearCase command in the search box.
 
Commands Index:
  intro
  annotate
  apropos
  catcr
  catcs
  cc.icon
  cc.magic
  cd
  chactivity
  chbl
  checkin
  checkout
  checkvob
  chevent
  chflevel
  chfolder
  chmaster
  chpool
  chproject
  chstream
  chtype
  chview
  clearaudit
  clearbug
  cleardescribe
  cleardiffbl
  cleardiff
  clearexport_ccase
  clearexport_cvs
  clearexport_pvcs
  clearexport_rcs
  clearexport_sccs
  clearexport_ssafe
  clearfsimport
  cleargetlog
  clearhistory
  clearimport
  clearjoinproj
  clearlicense
  clearmake
  clearmake.options
  clearmrgman
  clearprojexp
  clearprompt
  cleartool
  clearviewupdate
  clearvobadmin
  comments
  config_ccase
  config_spec
  cptype
  credmap
  creds
  deliver
  describe
  diffbl
  diffcr
  diff
  dospace
  edcs
  endview
  env_ccase
  events_ccase
  export_mvfs
  exports_ccase
  file
  find
  findmerge
  fmt_ccase
  getcache
  get
  getlog
  help
  hostinfo
  init_ccase
  ln
  lock
  lsactivity
  lsbl
  lscheckout
  lsclients
  lscomp
  lsdo
  lsfolder
  lshistory
  ls
  lslock
  lsmaster
  lspool
  lsprivate
  lsproject
  lsregion
  lsreplica
  lssite
  lsstgloc
  lsstream
  lstype
  lsview
  lsvob
  lsvtree
  makefile_aix
  makefile_ccase
  makefile_gnu
  makefile_pmake
  makefile_smake
  makefile_sun
  man
  merge
  mkactivity
  mkattr
  mkattype
  mkbl
  mkbranch
  mkbrtype
  mkcomp
  mkdir
  mkelem
  mkeltype
  mkfolder
  mkhlink
  mkhltype
  mklabel
  mklbtype
  mkpool
  mkproject
  mkregion
  mkstgloc
  mkstream
  mktag
  mktrigger
  mktrtype
  mkview
  mkvob
  mount_ccase
  mount
  msdostext_mode
  mvfslog
  mvfsstorage
  mvfstime
  mvfsversion
  mv
  omake
  pathnames_ccase
  permissions
  profile_ccase
  promote_server
  protect
  protectvob
  pwd
  pwv
  query_language
  quit
  rebase
  recoverview
  reformatview
  reformatvob
  register
  relocate
  rename
  reqmaster
  reserve
  rgy_backup
  rgy_check
  rgy_passwd
  rgy_switchover
  rmactivity
  rmattr
  rmbl
  rmbranch
  rmcomp
  rmdo
  rmelem
  rmfolder
  rmhlink
  rmlabel
  rmmerge
  rmname
  rmpool
  rmproject
  rmregion
  rmstgloc
  rmstream
  rmtag
  rmtrigger
  rmtype
  rmver
  rmview
  rmvob
  schedule
  schemes
  scrubber
  setactivity
  setcache
  setcs
  setplevel
  setsite
  setview
  shell
  snapshot.conf
  softbench_ccase
  space
  startview
  type_manager
  umount
  uncheckout
  unlock
  unregister
  unreserve
  update
  version_selector
  view_scrubber
  vob_restore
  vob_scrubber
  vob_sidwalk
  vob_snapshot
  vob_snapshot_setup
  wildcards_ccase
  winkin
  xclearcase
  xcleardiff
  xmldiffmrg

deliver

Delivers changes in a source stream to the target stream within or across projects

APPLICABILITY

ProductCommand type
ClearCasecleartool subcommand
ClearCase LTcleartool subcommand

Platform
UNIX
Windows

SYNOPSIS

  • Deliver changes in the source stream using the graphical user interface:
    deliver –g·raphical [ –str·eam stream-selector ]
    [ –to integration-view-tag ]
    [ –tar·get stream-selector ] [ –q·uery | –qal·l]

  • Obtain the status of a deliver operation in progress:
    deliver { –sta·tus [ –l·ong ] } [ –str·eam stream-selector ]

  • Cancel a deliver operation in progress:
    delivercancel [ –str·eam stream-selector ]
    [ –reset –to integration-view-tag ]

  • Preview a deliver operation:
    deliver –pre·view [ –s·hort | –l·ong ] [ –str·eam stream-selector ]
    [ –to integration-view-tag] [ –tar·get stream-selector ]
    [ –cac·t | –act·ivities activity-selector ...
    | –bas·elines baseline-selector ... ]

  • Deliver changes in the source stream:
    deliver [ –str·eam stream-selector ] [ –to integration-view-tag]
    [ –tar·get stream-selector ]
    [ –cac·t | –act·ivities activity-selector ...
    | –bas·elines baseline-selector ... ]
    [ –com·plete ] [ –gm·erge | –ok ]
    [–q·uery | –abo·rt | –qal·l ] [ –ser·ial ] [–f·orce ]

  • Resume or complete work on a deliver operation:
    deliver { –res·ume |–com·plete } [–str· eam stream-selector ]
    [ [ –reset ] –to integration-view-tag ] [ –gm· erge | –ok ]
    [–q· uery | –ab·ort | –qal·l ] [ –ser·ial ] [ –f·orce ]

DESCRIPTION

The deliver command lets you deliver work from a source stream to a target stream in the same or a different project. There may be several steps to delivering work:

  • Previewing the changes to be delivered
  • Identifying the activities, stream, or baselines you want to deliver
  • Resolving merge conflicts
  • Testing and building work in the target stream
  • Completing a deliver operation, which checks in new versions and records other information

If a deliver operation is interrupted through a system interrupt or user action, you must explicitly resume or cancel it.

In general, it is good practice to check in all work to your source stream before beginning a deliver operation.

You may not deliver when a rebase operation is in progress.

The Integration Activity

The deliver operation creates a UCM activity called the integration activity, which records a change set for the deliver operation. The activity name is of the form deliver.stream-name.date-stamp. When the deliver operation begins, the integration activity becomes the current activity for the integration view in use.

One-Step Deliver Operation

You can deliver your work in one step by specifying the –complete and –force options. The –force option suppresses prompting for user input during the deliver operation. The –complete option causes the deliver operation to continue to completion after the merge phase. Use this feature carefully to avoid the possibility of delivering merged files that may not compile.

Handling of Elements of Nondefault Merge Types

In a deliver operation, automatic merging is the default behavior for elements, unless user or never merge types were set for the elements. For information about setting merge behavior for an element type, see mkeltype.

For elements of the user merge type, you must invoke your own tool to merge from the source stream version to the integration view. The deliver operation checks out the elements, but you are responsible for merging and drawing merge arrows. Until merge arrows are drawn, the deliver operation will not proceed to the completion phase.

A deliver operation ignores versions from the source stream for elements of the never merge type. If all other versions are properly merged, the deliver operation can proceed to the completion phase. No merging or merge arrows are required.

Setting Policies

UCM includes policies that you can set to affect the deliver operation. You can set policies at project or stream creation with mkproject or mkstream or at a later time with chproject or chstream. For information about project and stream policies, see the reference pages for mkproject and mkstream.

Delivering Changes with MultiSite

The deliver command determines whether the target stream and source stream are mastered at different replicas. If they are, a remote deliver operation is put into effect. The source stream is assigned a posted status.

In a remote deliver operation, the source stream must be a development stream. If you want to deliver changes from an integration stream, you can do so by delivering to a development stream on the same replica, and then delivering from the development stream to the remotely mastered stream.

After the stream is in the posted state, the deliver operation can be continued only by someone working at the target stream's replica. Generally, this is the team's project integrator. Also, after it is posted, the deliver operation can be canceled only by a user at the replica where the target stream resides.

The option –to integration-view-tag is not accepted when starting a remote deliver operation. The remote post goes to the default target stream or an alternative target stream, if specified. The deliver –status command reports on any remote deliver operation in progress for the specified stream. The project integrator can then cancel or continue the deliver operation, using the –cancel option to halt it, or the –resume or –complete options to continue it. The project integrator must specify the integration view for the deliver operation.

While the remote deliver is in progress, you can create activities and perform checkins and checkouts for your source stream, but you cannot perform any of these operations:

  • Add, remove, or create baselines
  • Add or remove components
  • Rebase the source stream
  • Post another deliver operation

Delivering Selected Activities to a Nondefault Target

Delivering selected activities to a nondefault target is subject to the following restrictions:

  • If the full set of activities in the stream violates one of the policy settings, you will not be allowed to proceed with the selected activity delivery, even if the selected activities would not violate the policies.
  • If the full set of activities in the stream contains changes from a foundation baseline, you will not be allowed to deliver selected activities from this stream, regardless of the deliver policy settings.
  • If the set of activities you want to deliver contain versions in components that are not visible in the target stream or are not modifiable by the target stream, you will not be allowed to deliver the set of activities. Delivering an activity requires that you deliver all versions in all components in the change set. You can move the versions of the missing or nonmodifiable components into another activity.

RESTRICTIONS

Identities

No special identity required.

Locks

An error occurs if one or more of these objects are locked: the source stream, the UCM project VOB.

Mastership

(Replicated VOBs only) Your current replica must master the source stream.

OPTIONS AND ARGUMENTS

Starting the Graphical User Interface

Default
Command line interface.

–graphical
Starts the graphical user interface for deliver.

Specifying the Source and Destination for the Deliver Operation

Default
The default source is the stream attached to the current view. The default destination is the parent stream of the source stream. For an integration stream, the default destination is the default deliver target (if one is set), using either a view attached to the parent stream owned by the current user, or the view used by the last default deliver operation performed on the source stream.

–stre·am stream-selector
Specifies a stream that is the source for the deliver operation. The source stream cannot be a read-only stream.

stream-selector is of the form [stream:]stream-name[@vob-selector], where vob-selector specifies the stream's project VOB.

–to integration-view-tag
Specifies a view attached to the deliver target stream in the same project or in a different project. This option is not accepted for a remote-post deliver operation.

Specifying an Alternative Deliver Target

Default
For development streams, the parent stream of the source stream. For integration streams, the default deliver stream set by mkstream or chstream.

–tar·get stream-selector
Specifies the deliver target stream in the same or a different project. The target stream cannot be a read-only stream.

Using –to integration-view-tag alone is sufficient to start a deliver operation to the target stream. If –to and –target are used together, the view must be attached to the stream. If one default view is attached to the target stream and owned by the user, using –target stream-selector alone can start a deliver operation. Otherwise, an integration view must be specified.

stream-selector is of the form [stream:]stream-name[@vob-selector], where vob-selector specifies the stream's project VOB.

Obtaining the Status of a Deliver Operation

Default
None.

–sta·tus
Displays the status of a deliver operation. You are informed whether a deliver operation for the specified stream is in progress, whether the delivery is to a local stream or a remote stream, and, in the case of a remote deliver, whether the posted changes have been merged with the target stream.

Canceling a Deliver Operation

Default
None.

–can·cel
Halts a deliver operation in progress, returning the source and destination streams to their states before the deliver operation began. However, this option cannot undo a deliver operation after the completion phase has begun.

Also use –cancel when a deliver operation is interrupted (as by CTRL+C) or when it encounters an external error or condition that requires more information.

resetto integration-view-tag
You must not remove the integration view when a deliver operation is in progress. However, if the integration view is lost during a deliver operation, you can use the –resetto option to reset a new integration view so you would be able to cancel the operation. You can also use this option with –resume and –complete. Before you can reset a new integration view, the view-related records of the old integration view must be removed. UCM checks to see if the old view has any checkouts and if it has none, unsets the integration activity set in the view. If the old view has checkouts, you must remove them with rmviewuuid before proceeding. Make sure you run rmviewuuid only on lost or corrupted views.

Previewing the Results of a Deliver Operation

Default
For each activity to be delivered, displays the owner and activity-selector. For each baseline to be delivered, displays the owner and baseline-selector.

–pre·view
Shows activities or baselines that would be delivered if you were to execute the deliver operation for the specified stream. These are any activities or baselines that have changed since the last deliver operation from this stream. Use –preview only when no deliver operation is in progress for the stream.

Controlling Output Verbosity

Default
Varies according to the kind of output that the options described here modify. See the descriptions of –status and –preview.

–l·ong
As a modifier of –status or –preview, displays a list of versions that may require merging, in addition to the default information displayed by –status or –preview.

–s·hort
Modifies the –preview option. (This option does not modify the default –preview output.)

Delivering the Current Activity

Default
Delivers all activities in the stream that have changed since the last deliver operation from the stream.

–cac·t
Delivers the activity currently set in the view. The operation fails if you are not in a view, have not set your view to an activity or the activity depends on the inclusion of any unspecified activities. For an explanation of activity dependence, see “Selecting Activities to Deliver”.

Selecting Activities to Deliver

Default
Delivers all activities in the stream that have changed since the last deliver operation from the stream.

–act·ivities activity-selector, ...
Specifies a list of activities to deliver. The list must be self-consistent: the activities specified must not depend on the inclusion of any unspecified activities. For example, activity A2 is dependent on activity A1 if both contain versions of the same element and A2 contains a later version than does A1.

In addition, any activities that have been included in baselines but not delivered must also be delivered if changes for that component are in the specified activities. If the list of activities you specify is incomplete, the operation fails and lists the additional required activities.

activity-selector is of the form [activity:]activity-name[@vob-selector] where vob-selector specifies the activity's project VOB.

Selecting Baselines to Deliver

Default
Delivers all activities in the stream that have changed since the last deliver operation from the stream.

–bas·elines baseline-selector, ...
Specifies a list of baselines to deliver. The baselines must be created in the source stream or from the source stream's foundation. A development stream can deliver activities or baselines, but an integration stream can deliver only baselines.

Resuming a Deliver Operation

Default
None.

–res·ume
Resumes a deliver operation from the point at which it was suspended.

Completing a Deliver Operation

Default
None.

–com·plete
Completes a deliver operation. Verifies that changes being delivered have been merged with versions in the deliver target stream and that merge conflicts have been resolved. Checks in resulting new versions to the target stream and records that the deliver operation has been made. If merge conflicts exist, the deliver operation is suspended.

Use this option to complete a deliver operation or to resume a suspended deliver operation. To complete a deliver operation, you must specify this option; checking in merged versions to the integration view alone does not complete the deliver operation.

When used for a deliver operation in progress, this option implies the –resume option; that is, deliver –complete reports any merges that are still required and attempts to resolve them.

Merging

Default
Merging works as automatically as possible, prompting you to make a choice when two or more contributors differ from the base contributor. For general information, see the findmerge reference page.

–gm·erge
Performs a graphical merge for each element that requires it. This option does not remain in effect after a deliver operation is interrupted.

–ok
Pauses for verification on each element to be merged, allowing you to process some elements and skip others. This option does not remain in effect after a deliver operation is interrupted.

–q·uery
Turns off automated merging for nontrivial merges and prompts you for confirmation before proceeding with each change in the from-versions. Changes in the to-version are accepted unless a conflict exists. This option does not remain in effect after a deliver operation is interrupted.

–abo·rt
Cancels a merge if it is not completely automatic. This option does not remain in effect after a deliver operation is interrupted.

–qal·l
Turns off all automated merging. Prompts you for confirmation before proceeding with each change. This option does not remain in effect after a deliver operation is interrupted.

–ser·ial
Uses a serial format to report differences among files. Differences are presented in a line-by-line comparison with each line from one contributor, instead of in a side-by-side format. This option does not remain in effect after a deliver operation is interrupted.

Confirmation Step

Default
Prompts for user input.

–f·orce
Suppresses prompting for user input during the course of a deliver operation. The –force option does not remain in effect if the deliver operation is interrupted. You must include it again on the command line when you restart the deliver operation with –resume or –complete. The merge options for deliver are not affected by the –force option.

EXAMPLES

The UNIX 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 shell or Windows command interpreter prompt, followed by the cleartool command. In cleartool interactive mode, cmd-context represents the interactive cleartool prompt.

Note: In the UNIX examples that follow, arguments and output that show multicomponent VOB tags are not applicable to ClearCase LT, which recognizes only single-component VOB tags. In this manual, a multicomponent VOB tag is by convention a two-component VOB tag of the form /vobs/vob-tag-leaf—for example, /vobs/src. A single-component VOB tag consists of a leaf only—for example, /src. In all other respects, the examples are valid for ClearCase LT.

  • Start a deliver operation using command defaults.

    cmd-context deliver -to webo_integ
    Changes to be DELIVERED:
    FROM: stream "chris_webo_dev"
    TO: stream "integration"
    Using integration view: "webo_integ".
    Do you wish to continue with this deliver operation?  [no]
     yes

    Needs Merge "/view/webo_integ/vobs/webo_modeler/design/foo" [(automatic) 
    to /main/integration/1 from /main/integration/chris_webo_dev/1 (base also 
    /main/integration/1)]
    Checked out "/view/webo_integ/vobs/webo_modeler/design/foo" from version 
    "/main/integration/1".

    Attached activities:
    activity:deliver.chris_webo_dev.20000606.160519@/vobs/webo_pvob  "deliver
    chris_webo_dev on 06/06/00 16:05:19."

    Needs Merge "/view/webo_integ/vobs/webo_modeler/design/foo" [to 
    /main/integration/CHECKEDOUT from /main/integration/chris_webo_dev/1 base 
    /main/integration/1]

    Trivial merge: "/view/webo_integ/vobs/webo_modeler/design/foo" is same as
     base "/view/webo_integ/vobs/webo_modeler/design/foo@@/main/integration/1".

    Copying 
    "/view/webo_integ/vobs/webo_modeler/design/foo@@/main/integration/chris_webo
    _dev/1" to output file.
    Moved contributor "/view/webo_integ/vobs/webo_modeler/design/foo" to
    "/view/webo_integ/vobs/webo_modeler/design/foo.contrib".
    Output of merge is in "/view/webo_integ/vobs/webo_modeler/design/foo".
    Recorded merge of "/view/webo_integ/vobs/webo_modeler/design/foo".

    Deliver has merged
    FROM: stream "chris_webo_dev"
    TO: stream "integration"
    Using integration view: "webo_integ".
    Build and test are necessary in integration view "webo_integ"
    to ensure that the merges were completed correctly.  When build and
    test are confirmed, run "cleartool deliver -complete".

  • Complete a deliver operation that is in progress.

    cmd-context deliver –complete 
    Resume deliver
         FROM: stream "chris_webo_dev"
         TO: stream "integration"
    Using integration view: "webo_integ".
    Do you wish to continue with this deliver operation?  [no]
     yes
    Are you sure you want to complete this deliver operation?  [no] yes
    Deliver has completed
         FROM: stream "chris_webo_dev"
         TO: stream "integration"
    Using integration view: "webo_integ".

  • Check the status of a deliver operation.

    cmd-context deliver –status
    Deliver operation in progress on stream "stream:chris_webo_dev@\webo_pvob"
         Started by "ktessier" on "14-Jun-00.16:07:46"
         Using integration activity "deliver.chris_webo_dev.20000614.160746".
         Using view "webo_integ".
         Activities will be delivered to stream "stream:integration@\webo_pvob".
    Development Stream Baselines:
    baseline:deliverbl.chris_webo_dev.20000614.160746.129@\webo_pvob
    Activities:
    activity:fix_copyright@\webo_pvob
    activity:update_date@\webo_pvob
    activity:fix_defect_215@\webo_pvob

  • Cancel a deliver operation that is in progress.

    cmd-context deliver –cancel
    Cancel deliver
         FROM: stream "chris_webo_dev"
         TO: stream "integration"
    Using integration view: "webo_integ".
    Are you sure you want to cancel this deliver operation?  [no]
     yes
    Private version of "/view/webo_integ/vobs/webo_modeler/design/add_proc" 
    saved in "/view/webo_integ/vobs/webo_modeler/design/add_proc.keep".
    Deliver of stream "chris_webo_dev" canceled.

SPONSORED LINKS



 

ClearCase Links • ClearCase Books • ClearCase Commands Reference • ClearCase Forums • ClearCase News