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

目前只有一个分支 master

本地获取项目

首次提交,添加文件 “Demo.md”

2.添加 Develop 分支
- 添加develop分支
1 | git branch develop |

- gitlab上已经存在develop分支

- develop和master分支

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

- gitlab 上出现feature/fea_AAA分支

- 做一些改动并提交到feature/fea_AAA
1 | git status |

- gitlab

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

- 切回develop分支,合并特性分支至develop分支后推送到远端分支(须确保特性分支经过测试)
1 | git checkout develop |

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

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

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

6.完成Release(正式发布后进行)
- 合并Release到master
1 | git checkout master |

- 合并Release到Develop
1 | git checkout develop |

- 在master打标签 v1.0.0 记录本次发布



- 删除Release分支

7.开始Hotfix (和开始Release类似)
- 基于 master 添加HotFix分支并推送到远端。
1 | git checkout master |
8.完成Hotfix(和完成Release类似)
- 合并Hotfix到master
1 | git checkout master |
- 合并Hotfix到develop
1 | git checkout develop |
- 在master打标签 v1.0.1 记录本次发布
