Branch Development Scenarios
Top  Previous  Next


Simplicity and low-overhead are two major design goals of CS-RCS. Therefore, by default, CS-RCS maintains only a single active branch per-user. This is normally not a limitation because in most situations the current changes are checked-in before switching from branch to branch. However, sometimes an urgent fix must be performed on another branch. Example 2 below illustrates how you can work concurrently with two branches (or more).

Note: When switching branches, CS-RCS is optimized to replace only working files that differ from branch to branch.


Example 1 - Normal Development Scenario

The following is a normal development scenario:

1.Switch to branch A.  
2.Fix a few problems.  
3.Test and check-in all changes.  
4.Switch to branch B (or the trunk).  
5.Fix a few problems.  
6.Test and check-in all the changes.  
7.Switch again as desired and/or perform merges.  

Example 2 - Concurrent Branch Development


Normal development has begun with the following steps:
1.Work on branch A or on the trunk.  
2.Fix a few problems.  

Suddenly, you are informed that urgent fixes are required on branch B.

To perform urgent fixes on branch B:
1.Define the Local work folder for the branch. To do this, execute the Project | Workstation properties… command. Select branch B and specify the desired Local work folder, for example, C:\Work\ProjectX_BranchB.  
2.Switch to branch B.  
3.Open your development tool and select the project in the branch work folder. Fix the problems.  
4.You may check-in all changes to branch B.  
5.Switch to branch A.  
6.Continue with branch A fixes.  
7.You may check-in all changes to branch A or switch again to branch B.  
 
Note: Examine carefully where your development tool creates the executable files. If they are created using a relative paths, you must test the executables located in the branch work folder.