Skip to content

Instantly share code, notes, and snippets.

@vxhviet
Last active August 11, 2023 18:31
Show Gist options
  • Save vxhviet/9c4a522921ad857406033c4125f343a5 to your computer and use it in GitHub Desktop.
Save vxhviet/9c4a522921ad857406033c4125f343a5 to your computer and use it in GitHub Desktop.
A simplified version of Git Flow

Simplified Git-flow

                        RELEASE TAG
o----------------------------o-----------------o------------o------> MASTER
 \                          /  \                \----------/ HOTFIX
  \                        /    \                          \
   \----------------------/      \--------------------o-----o------> DEVELOP
                                  \                  /
                                   \----------------/ FEATURE

  • Master: should contain the most stable, production ready code. In other words, we can pull from master and build and deploy at anytime.
  • Develop: is where most of the development happen. After code in Develop stable enough, it can be merged back to Master. Every release should be tagged (Ex: version 2.1.3).
  • Feature: is where each feature development happens. Should be only branched from Develop and commited back to Develop. After fully merged to Develop, individual Feature branch can be deleted.
  • Hotfix: is where we do bug fix in current release. After finish fixing the bug, Hotfix get merged to both Master and Develop, then it can be deleted.

Naming convention:

  • Feature: prefix with feature_ and then a short descriptive name (Ex: feature_new_mission).
  • Hotfix: prefix with hotfix_ and then a short descriptive name (Ex: hotfix_duplicate_mission).

Read more:

StackOverflow, Gist

@nimbosa
Copy link

nimbosa commented Jan 7, 2019

found a good write-up on Medium covering this: https://medium.com/goodtogoat/simplified-git-flow-5dc37ba76ea8 ;)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment