How to switch Rational ClearCase streams and continue synchronizing with Rational Team Concert
Last Updated: August 1, 2012
Build Base: Rational Team Concert 3.0, 4.0
This article outlines how to continue synchronizing when switching between Rational ClearCase streams or branch types. When working with a large Rational ClearCase deployment, it is sometimes necessary to create a new UCM project and stream, switch the team’s active stream to the new one in the middle of the project, and then continue synchronizing Rational ClearCase data with Rational Team Concert. There are two ways to continue synchronizing over multiple Rational ClearCase streams or branch types. One way is to continue using an existing synchronized stream and then switching the Rational ClearCase stream or branch type to replicate to it. The other way is to create a new synchronized stream, and configure it to start from a previous stream’s snapshot. This document reviews the steps of these two options and provides caveats for you to consider.
Note: You can also apply these two techniques when you import Rational ClearCase streams or branch types with history.
Switch a Rational ClearCase stream to use an existing synchronized stream
The Rational ClearCase Synchronizer allows you to change the Rational ClearCase stream or the Rational ClearCase branch type of the existing synchronized stream. You can maintain the synchronization easier over time because the number of synchronized streams would not increase; however, ensure that developers are not checking into multiple streams or branch types concurrently. When you continue using a synchronized stream, you cannot synchronize the old stream after you switch the synchronized stream’s configuration.
To switch the Rational ClearCase stream, perform the following steps:
- Ensure that you do not have any pending change-sets to synchronize on the synchronized stream. If you do, request a synchronization and wait for a successful completion of it.
- In the ClearCase Synchronized Streams view, right-click the synchronized stream, and select Open.
- In the Synchronized Stream editor, switch to the ClearCase tab, and then click Change at the right of Stream field.
- In the Change ClearCase Stream dialog, specify the new UCM stream or the branch type.
- Click Save from the synchronized stream editor. The Rational ClearCase synchronization view is automatically recreated, and a synchronization request is queued automatically.
Note: The last step requests a build in a unique way. It imports all the folders and files again, rather than having Rational ClearCase calculate the difference and bring over only the delta. The implication is that the synchronization process takes longer than usual. Because it is reimporting, the synchronization after changing the stream takes about as long as the initial import.
Note: It does not imply that the imported files are recreated in Rational Team Concert. The resulting change-set in Rational Team Concert is always the delta from the synchronized stream’s content before the synchronization.
Switch a Rational ClearCase stream to use a new synchronized stream
The second option is to create a new synchronized stream for the new Rational ClearCase stream or the new branch type. This way, you can synchronize the previous stream even after you create a new synchronized stream for the new Rational ClearCase stream. This option is suggested for when you start a new Rational ClearCase stream, and your team develops software code on both the new stream and the previous one (for example, feature release streams and patch release streams). This option is also suggested when your team decides to switch to the Rational ClearCase stream or the branch type, but team members might need to check in additional code into the old stream on occasion (for example, creating a special build for a client’s request).
If you need to maintain several synchronized streams, you can delete a synchronized stream later, when you are sure that it is no longer needed for delivering to the Rational ClearCase stream or the branch type that is referenced by the synchronized stream.
Although you can create a new synchronized stream in the same way as the existing ones, it is also suggested that you set up the initial content for the new synchronized stream for the following reasons:
- The synchronizer creates a delta change-set in Rational Team Concert from what is configured for the synchronized stream.
- The check-in history of a file would branch in a similar way as Rational ClearCase does when developers check-in different versions to the Rational ClearCase streams or branch types.
In the Rational Team Concert 4.0, perform the following steps:
- Ensure that you do not have any pending change-sets to synchronize on the synchronized stream. If you do, request a synchronization, and wait for a successful completion of it.
- In the Team Artifacts view, select the synchronized stream under the Source Control item.
- Right-click the stream, and select New – Snapshot to create a snapshot. This snapshot is used to configure the new synchronized stream that you are going to create.
- In the ClearCase Synchronized Stream view, click the Invoke wizard to create a new ClearCase Synchronized Stream entry in the table icon from the toolbar.
- Continue through the Import ClearCase Stream wizard until the last page.
- In the Jazz Source Control Information page of the wizard, select Specify a snapshot to be used as initial content of Jazz synchronized stream, and then select Browse at the right of Snapshot field.
- Select the snapshot created on the previous synchronized stream.
- Follow the rest of the wizard to complete the stream creation, select the folders and files to synchronize, and then request a synchronization.
The synchronized stream is initialized by the content from the selected snapshot, and the first synchronization creates delta change-sets from the snapshot that you specified in the wizard.
- Managing Rational ClearCase Synchronized Streams: The Rational solution for Collaborative Lifecycle Management Information Center.
Copyright © 2012 IBM Corporation