In this example we assume two users are working on their respective branches.
We are using Smart Git. v.1.01. The trial version of Smart Git can be downloaded here.
Let us assume user A is working on branch #47 and User B is working on Branch #101
Now when both users are ready to merge and update their versions, they can follow the below steps:
on the User A’s machine,
1a) In Smart Git User A needs to first commit his change to their local branch 47.
2a) Merge with Local version of Master.
3a) Switch to Master (Local Master)
4a) Merge Master with branch 47.
6a) Push (to Remote Repository).
So, this will have the latest master in the repository, the other users (user B) need to update their local copies.
So here it is:
1b) User B commit their Branch #101 and push it to remote branch.
2b) Switch to Master (local).
3b) Pull/Fetch changes from Remote Branch. At this step Smart Git automatically merges and commits the pulled branch.
4b) Merge with branch #101.
5b) If conflicts using Git Bash fix the conflicting files otherwise skip to next step.
6b) Commit. (local)
7b) Push (Remote).
8b) User B can now either create a new branch or switch back to branch #101 and merge with latest master.
Now, since User B merged all their changes to the master, its now User A’s turn to merge with the latest.
7a) Fetch/Pull from Master(Remote).
8a) At this point User B can create a new branch or work on master itself.
We hope this step-by-step would help you and also wish you the best of Git. As it did take a while for us to get our heads round it.