Workflow for rebasing your work area (multiple-stream UCM projects only)

Figure 1: Workflow for rebasing your work area in a multiple-stream environment

The Rebase your work area workflow follows Deliver activities and precedes Find and set activities, which restarts the cycle. The workflow has the steps Test and Complete.

In a multiple-stream project, the project manager or project integrator periodically organizes delivered activities into baselines. Usually, baselines go through a cycle of testing and fixing bugs until they reach a satisfactory level of stability. When a baseline stabilizes, your project manager designates it as a recommended baseline.

To keep your development work area up-to-date with the activities in the recommended baseline of your parent stream, rebase your development work area with each new recommended baseline as it becomes available.

Rebasing has several benefits:
  • You stay up-to-date with other developers' work.
  • You reduce the number of merges and minimize the time required to merge versions.
  • You identify integration problems early.

Preparing your work area

To prepare for the rebase operation, find and check in the work in your development view. You cannot start a rebase operation from a view that contains checkouts.

Starting the rebase operation

After you prepare your work area, start the rebase operation. The latest recommended baseline is presented. You can choose a different baseline, but it must be newer than the baseline currently in your development stream.

Merging

For any version that you modify in your development stream, if another team member has modified and delivered a version of the same element, you must merge when you rebase to a baseline that contains the delivered version.

For example:
  1. As part of working on an activity, you check in a version of prog.c from your development view.
  2. Another developer checks in and delivers a new version of prog.c.
  3. Your project manager adds the new version to the recommended baseline.
  4. You rebase your development stream. As part of the rebase operation, you must merge the other developer's version into your development stream.

All nonconflicting differences are merged, as happens during the deliver operation. If versions in the baseline contain changes that conflict with the corresponding versions in your development work area, you are prompted to decide how to resolve conflicting differences.

Testing

After your work area is reconfigured and any needed merges are completed, initiate a test build in your development view. This testing helps verify that any undelivered work builds successfully with the versions in the new baseline.

In addition to building and testing, you may need to do the following:

  • Edit the checked-out versions to resolve build errors.
  • Check out and edit additional files.
    Tip: Do not check in any of your changes until you are ready to complete the operation. Checking in complicates efforts to undo the rebase operation.

Completing the rebase operation

When you are satisfied with your test builds, formally complete the rebase operation. This changes the state of your stream.