一个完整的GitFlow
简要说明:就像代码需要代码规范一样,代码管理同样需要一个清晰的流程和规范本。
本案例主要展示了一个项目通过使用GitFlow管理代码的从特性开发到测试、发布、热修复和代码回归的整个流程。
PS:本案例中涉及到的分支的新建、合并和删除等操作都可以在GitLab上完成。
1.项目初始化
2.添加 Develop 分支
1 2
| git branch develop git push -u origin develop
|



3.开始新Feature开发
- 基于develop添加Feature分支并推送到远端
1 2 3
| git branch feature/fea_AAA git checkout feature/fea_AAA git push -u origin feature/fea_AAA
|

- gitlab 上出现feature/fea_AAA分支

1 2 3
| git status git add Demo.md git commit -m "[mod] add feature code"
|


4.完成Feature
- 拉取develop更新后合并develop至当前特性分支
1 2
| git pull origin develop git merge develop
|

- 切回develop分支,合并特性分支至develop分支后推送到远端分支(须确保特性分支经过测试)
1 2 3
| git checkout develop git merge feature/fea_AAA git push origin develop
|

- gitlab上develop和feature/fea_AAA已经在同一节点

5.开始Relase
- 基于develop 添加Release分支并推送到远端
1 2 3
| git branch release/release_1.0.0 git checkout release/release_1.0.0 git push -u origin release/release_1.0.0
|

- gitlab 上出现release/release_1.0.0分支

6.完成Release(正式发布后进行)
1 2 3
| git checkout master git merge release/release_1.0.0 git push
|

1 2 3
| git checkout develop git merge release/release_1.0.0 git push
|





7.开始Hotfix (和开始Release类似)
- 基于 master 添加HotFix分支并推送到远端。
1 2 3 4
| git checkout master git branch hotfix/hotfix_1.0.0 git checkout hotfix/hotfix_1.0.0 git push -u origin hotfix/hotfix_1.0.0
|
8.完成Hotfix(和完成Release类似)
1 2 3
| git checkout master git merge hotfix_1.0.0 git push
|
1 2 3
| git checkout develop git merge hotfix_1.0.0 git push
|

至此一个完整的GitFlow完成。