rebase

Changes the configuration of a UCM stream

APPLICABILITY

ClearCase UCM (cleartool subcommand)

SYNOPSIS

DESCRIPTION

The rebase command changes the set of versions accessible from a development stream to include those represented by baselines created in the integration stream. A rebase operation reconfigures your development stream by changing its set of foundation baselines.

In general, it is recommended that you use the rebase command to update your development work area often in the course of code development, particularly before you deliver work to the integration stream.

Execute a rebase operation from a view attached to your development stream. The current view is used by default. To use another view, specify it on the command line with the -view option. You must check in all work for all views attached to the development stream before beginning a rebase operation. Your current view and stream are used if none are specified.

Previewing a Rebase Operation

Use the -preview option to see which baselines would change and which activities would be merged to your development stream if you executed the deliver operation for the specified stream. The default output displays the owner, activity-selector and title for each activity. With the -short option, only the activity-selector is displayed. The -long option displays the default output plus a list of versions that potentially require merging.

Selecting Baselines

The rebase -recommended command reconfigures your stream with the recommended baselines for your project. You can also use rebase -baseline to select other baselines that meet these criteria:

You can use the rebase operation for a subset of the components in your development stream if these criteria are met.

Deleting Baselines from Your Configuration

You can drop baselines from your stream's configuration using rebase -dbaseline, but only if those baselines' components have not been modified in your stream.

Rebase Activity

When a rebase operation begins, it creates an integration activity to record changes made during the rebase. The integration activity is set as the current activity in the development view until the rebase operation is completed or canceled.

Merge Options

You are alerted to differences between versions of elements in your view and versions of the same elements that are brought in by the rebase operation. You can modify automated merging with command line options similar to those of the findmerge command (-gmerge, -ok, -query, -abort, -qall, -serial).

You are informed if conflicts exist after an automated merge is attempted on each version. After completing the build and test phase, use rebase -complete to finish the rebase operation.

Completing or Resuming a Rebase Operation

A rebase operation can be interrupted with CTRL+C or when it encounters an external error or condition that requires more information. To continue the operation, reissue the rebase command with the -resume option. The -complete option resumes the rebase operation, verifies that required merges have been done, checksin any versions that are checkedout, and ends the rebase operation.

Note that checking in merged versions in the development view does not complete the rebase operation. You must use the -complete option for this.

Canceling a Rebase Operation

A rebase operation can be interrupted with CTRL+C or when it encounters an external error or condition that requires more information. Reissue the rebase command with the -cancel option to end the rebase operation and return work areas to their previous state.

Modifying the Set of Foundation Baselines for a Stream

Before changing the list of foundation baselines, the rebase command checks for components that have changed since the last deliver or rebase operation. If no components have changed, the stream is reconfigured using the revised set of foundation baselines.

A stream can use any baseline of a component in its selection list, with the following restrictions:

PERMISSIONS AND LOCKS

Permissions Checking: None.

Locks: An error occurs if there are locks on any of the following objects: the UCM project VOB, the development stream.

Mastership: The development stream must be locally mastered.

OPTIONS AND ARGUMENTS

INVOKING THE GRAPHICAL USER INTERFACE. Default: Command-line interface.

-gr·aphical

Invokes the graphical user interface for the rebase operation.

SELECTING A VIEW. Default: The current working view.

-vie·w rebase-view_tag

Specifies the view from which to execute the rebase command. If this information is not supplied, the current view context is used. The view must be attached to a UCM development stream.

SPECIFYING BASELINES. Default: None.

-rec·ommended

Indicates that the rebase operation use the recommended project baselines as a source to update your work area.
-bas·eline baseline-selector[,...]

Specifies one or more baselines to use as a source to update your work area.
baseline-selector is of the form: [baseline:]baseline-name[@vob-selector] and vob is the baseline's UCM project VOB.
-dba·seline baseline-selector[,...]

Specifies one or more baselines to remove from the stream's baseline selection list, making the baseline and its versions unusable in this stream.

RESUMING OR CANCELING A REBASE OPERATION. Default: None.

-res·ume

Restarts a rebase operation from the point at which it has been halted or suspended. You cannot resume a rebase operation that has been successfully halted with the -cancel option.
-can·cel

Cancels a rebase operation and restores the stream's original set of baselines. The option deletes the integration activity and any versions created by the rebase operation that are not yet checkedin.
If any new versions have been checked in, the cancellation is halted and you are informed of completed merges and any checkedin versions that resulted from the rebase activity. After undoing the merges and checkins, you must issue the rebase -cancel command again to cancel the rebase operation.
-f·orce

Suppresses prompting for user input during the course of a rebase operation. You must specify this option again for it to be in effect when you resume a rebase operation that has been suspended. The merge options to the rebase command are not affected by this option.
-com·plete

Completes a rebase operation.
You can use this option after file conflicts have been resolved to complete the rebase operation. It resumes the command process, verifies that needed merges were done, checks in any versions that are checked out, and records changes in the change set for the rebase activity.

PREVIEWING THE RESULTS OF A REBASE OPERATION. Default: Displays a short listing.

-pre·view

Displays a list of activities that will be accessible from the development stream after a rebase operation with the specified baselines.
-s·hort

Modifies the -preview option. Displays a list of the activities. This is the default.
-l·ong

Modifies the -preview option. Displays a list of activities and change sets and a list of elements that will require merging.

MERGE OPTIONS. Default: Works as automatically as possible, prompting you to make a choice in cases where two or more nonbase contributors differ from the base contributor. You can specify the following options to modify the merge operation. These work just as they do in the findmerge command.

-ok

Pauses for verification on each element to be merged, allowing you to process some elements and skip others.
-gm ·erge

Performs a graphical merge for each element that requires it. It also attempts to check out the to-version, if it is not already checked out to your view.
-q·uery

Turns off automated merging for non-trivial merges and prompts you to proceed with every change in the from-versions. Changes in the to-version are automatically accepted unless a conflict exists.
-abo·rt

Cancels a merge if it is not completely automatic.
-qal·l

Turns off automated merging. Prompts you to determine whether you want to proceed with each change.

EXAMPLES

Examples including 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 command interpreter prompt. In cleartool interactive mode, cmd-context represents the interactive cleartool prompt. In Attache, cmd-context represents the workspace prompt.

cmd-context rebase -recommended
Changed config spec for view "sah2_testproj_dv" to reflect its stream's new configuration.Build and test are necessary to ensure that the merges were completed correctly. When build and test are confirmed, run "cleartool rebase -complete".
cmd-context rebase -complete
Rebase in progress on stream "sah_testproj_21211".
Started by "hehir" at 09/20/99 16:25:35.

SEE ALSO

deliver, findmerge



Feedback on the documentation in this site? We welcome any comments!
Copyright © 1999 by Rational Software Corporation. All rights reserved.