O/R Mapping
Mac OS X
Tips and Tricks
UML Diagrams
VP Suite
Change Log

Branch and Tag Support in VP Teamwork Server

Teamwork Server is a version control system made especially for Visual Paradigm products to providing revision control and collaboration functionalities. You can import projects, commit and update your modeling project to the Teamwork Server. Project comparison and merge operations are also done automatically. If there is more than one team member modifying the same set of models at the same time, you can also resolve conflicts with the assistance of the comprehensive conflict resolution UI.

Other than primitive revision control and collaboration, you can also manage your modeling project with branches and tags. Tags are used to mark milestones or release-quality projects, so used to keep your work isolated from any changes. Branches are separate lines of development isolated from the main line, to avoid making unstable changes to the main line. Once the changes are stable enough the branch can be merged back into the main project (the trunk). Branching from a project can keep the modeling going on while the core project is kept stable.

Checking out a Project

Animated Demo

Checking out a project from the repository means to copy the project from the repository into your local drive. Select a project to check out and click the ‘Checkout’ button in the bottom right corner.

The Project Details pane shows the particulars of the project

After the project has been checked out, you may open it in VP-UML. Click the ‘Open Project’ button in the bottom corner to do so.

Committing Changes to the Repository

Animated Demo

This is our modified project.

To commit it to the repository select Tools> Teamwork> Commit.

Committing can also be done by clicking the ‘Commit’ icon in the toolbar or right-clicking a project node in a tree and selecting Teamwork> Commit from the pop-up menu.

Enter a comment for the commit and press ‘OK’.

The ‘Commit Model(s)’ pane will show all the changes that will be committed to the server.

Updating Changes to the Repository

Animated Demo

To update changes from the repository select Tools> Teamwork> Update.

The ‘Update Model(s)’ dialog box lists all the changes that will updated to your project. Click OK to proceed.

The changes made by other team members will be brought to your copy.

Branching and Tagging a Project

Branches are tags are quite similar things, but with different purposes. Tags are used to mark milestones or release-quality projects, to keep your work isolated from any changes and are therefore rarely modified. Branches are for when modeling activities will be carried out that may make the project unstable, but can always merge back to the trunk, or vice versa.

Creating a Branch

Animated Demo

To create a branch or tag first connect to the Teamwork Server (please refer to section above). Select a project from the Projects list where you want to create a branch and click Projects> Branch from the menu.

Enter the name of the branch and select the action you want to take after creating the branch. By selecting ‘Start working in branch’ will checkout and switch to the new branch, while ‘Stay in Trunk’ will stay working in the trunk. We will select ‘Stay in Trunk’.

The branch is now created.

Creating a Tag

Animated Demo

To create a tag connect to the Teamwork Server and select the project you want to add a tag to from the Projects list. Select Projects> Tag from the menu.

Enter a tag name and select the action you want to take after creating the tag. As with the branches, selecting Start working in branch’ will checkout and switch to the new branch, while ‘Stay in Trunk’ will download the branch to the local drive, but stay in the trunk or tag. We will select ‘Stay in Trunk’. Click OK to create the tag.

Suggested Branch Usage

Here is an example of how branches might be used in VPTS.

Merge Changes from Trunk to Branch

Animated Demo

This is the branch project. The color of the classes have been modified.

You can merge any changes from the trunk to the branch by selecting Tools> Teamwork> Merge...

Select the trunk to merge from and click OK.

The ‘Merge Project’ dialog box shows the changes in the trunk that will be merged into the branch. Click OK to continue.

After the merging is done it will automatically commit. Enter a comment for the commit and press OK.

Click OK again in the ‘Commit Model(s)’ dialog box.

The merge is complete. In this example the TransactionType class has been brought into the project for further formatting.

Merge Finished Branch to Trunk

Animated Demo

After a branch is finished, you can merge all the work from the branch back to the trunk. Before merging from branch to trunk, please make sure all trunk work has been merged to the branch. After merging a finished branch back to the trunk, the branch will usually be deleted.

We are now in the trunk of the project.

Let’s merge the ‘Improve-Formatting’ branch back to the trunk. Select Tools> Teamwork> Merge...

In the Merge dialog box, select the path you wish to merge from by clicking the ‘...’ button next to the path field. In this case it is the branch project.

The ‘Merge Project’ dialog box will show all the changes that will be merged back into the trunk. Click OK. It will automatically ask you to commit the changes. Select OK to continue and commit.

The trunk is now modified as the changes made in the branch are merged into the trunk.

Normally no more changes are made to a branch after it has been merged back to the trunk. In this case you are advised to delete the branch altogether.

Deleting a Branch

To delete a branch, open the Teamwork Client and select Project> Delete Branch... from the menu.

Select the branch you want to delete and click OK.

Click Yes to confirm the delete.

Resources

 
 
Last modified: 2007/08/01 21:13
 
 
Home | Recent Topics | Highlights | UML Diagrams | Tips and Tricks | Object-Relational Mapping
visual-paradigm.com Home | Training Center | UML Center | VP Gallery | Discussion Forum | UML Open Directory