This will be explained from the view that two different persons are working on two different branches in the Source Control. The two example branches I will use and you will see in the screenshots are as follows:
- JMS – Dev
- JMS – Dev – Dainius
We are working on the JMS – Dev – Danius branch while let’s say another team are working on the JMS – Dev branch.
In the situation of two branches, before deploying an application you need to merge, backwards and forwards.
Before merging you need to get the latest version of the application in your workspaces.
In this scenario, I have a workspace called LONWS07-ST-JMS which includes both JMS – Dev and JMS – Dev – Dainius.
In the next step, we need to get latest version from both branches.
Once we have the latest version from both branches, we can merge.
Backward Integration
Firstly, we need to do a Backward Integration, which will merge the changes that were done on JMS – Dev into our branch.
- Right click on JMS – Dev
- Select Branching and Merging
- Click on Merge
- This is the source of the merge
- This is the destination of the merge
- Click Next
- Click on Next
- Click on Finish
The Backwards Integration will begin shortly.
Once that’s done, you need to check in JMS – Dev – Dainius. The change set should look similar to this:
- Override Reason should be: Admin Overriden as the merge check in is self explanatory.
- App + Release + Iteration + INP (In Progress) —- Reason
- It shows the files affected by the change
Once the Backward Integration is done, we need to do the Forward Integration which will taken the changes done on JMS – Dev – Dainius and merge them into JMS – Dev. In that way, both branches will have the latest possible version within the Source Control.
Forward Integration
- Right click on JMS – Dev – Dainius
- Select Branching and Merging
- Click on Merge
- This is the source of the merge
- This is the destination of the merge
- Click Next
- Click on Next
- Click on Finish
Now, you need to check in JMS – Dev. The change set should look something like this:
- Override Reason should be: Admin Overriden as the merge check in is self explanatory.
- App + Release + Iteration + INP (In Progress) —- Reason
- It shows the files affected by the change
Post your comment on this topic.