Merging takes changes between two points in a stream, the initial state and the end state, and merges
them into your workspace. Typically the initial state will be the root of a stream (project version) and the end state can either be the
stream or another project version.
It is very important to understand that the destination of the merge is always the project in your workspace. After the merge has completed
you can test the changes locally and then release them to the new stream.
To merge a project:
1. |
Add the project you want to merge from the destination stream into your workspace. In the Repositories view, select the project to merge, bring up the context menu, and select the Add To Workspace menu item. |
2. |
From the Navigator view, select the project, bring up the context menu and choose the Team > Merge... menu item. This will bring up the Merge wizard. |
3. |
In the Merge Setup page, select the project and the repository with which the project is shared. Click the Next button on the wizard. |
4. |
On the Initial State page, choose the initial state of the merge. This will usually be the root project version on which the originating stream was split. Select a version in the list. Click on the Next button of the wizard. |
5. |
On the End State page, choose the end state of the merge. This can be either a version (for example if you versioned from your stream before the merge) or it can be a stream. Click the Finish button on the wizard. |
6. |
A merge view will appear in the editor area. This shows the changes between the initial and end state based on the resources in your workspace. Catch up or merge changes within this view to your local workspace. You cannot release changes from within the merge view. |
7. |
After merging the changes, close the merge view and test and review the result of the merge. If you are happy with it, you can release the changes to the destination stream. |
Here is an example of what the merge editor looks like:
After merging changes into a stream, it is recommended that you create a project version to save the project's state after the merge. This project version can be used to split again or be used with subsequent merges.