I use TortoiseGit, with default options, ie, merge with ff.
Applicable for hot-fixes and small features.
Branch Naming
Prefix the branch name with the issue# then follow by a short subject, eg, 757_duplicate_order
Commit Message
Start the commit message with issue# in square bracket follow by more object name in square brackets, and then by verb in past tense, eg, [issue#757][order] Fixed duplicate orders.
Subflow 1 Inital commit
-
Switch/Checkout
master.
This step is crucial. Make sure you are on the MASTER branch. -
Git Pull
from remote - Now, implement the hot-fixes and test in development until they are ready to commit
-
Git Commit
, select new branch and input a name say hotfix (chosen for brevity, please follow branch naming convention above) - Select the files to commit and click OK
Subflow 2 When we are ready to test hotfix in staging:
-
Switch/Checkout
staging -
Git Pull
from remote -
Git Merge
from branch hotfix, default options, click OK -
Git Push
staging to remote - Predeploy staging in Jenkins. Go to Build History, Console Output and verify Changed Files.
- Deploy staging in Jenkins
- Test in staging
Subflow 3 Continue with more changes in hotfix:
-
Switch/Checkout
hotfix -
Git Commit
to hotfix - Go to subflow 2
Subflow 4 When we are ready to deploy to master:
-
Switch/Checkout
master -
Git Pull
from remote -
Git Merge
from branch hotfix, default options, click OK -
Git Push
master to remote - Predeploy master in Jenkins. Go to Build History, Console Output and verify Changed Files.
- Deploy master in Jenkins
After that, the branch hotfix can be deleted.
Posted by kiatng to Git (2015-03-05 07:36)