I use git-flow for all of my projects.
- Master branch: Run on Production Environment
- This branch was protected: only repo owner can push/accept pull request.
- Develop branch: Run on Development/Staging environment
- Code that pass QC will be go on to
staging
- Create pull request to
master
after QA.
- Code that pass QC will be go on to
- Hotfix branch: must be base on
master
- Rebase before create pull request
- Create a pull request to
master
when complete. - Update develop branch.
- Feature branch: Development only.
- Rebase before merge into
develop
branch.
- Rebase before merge into
- Issue branch: Development only
- Similar to feature branch. Created mainly because of bugs in develop/staging environment or low priority bugs on production.