项目人员(角色)
- Tester
- Developer
- Maintainer
The Main branches 主分支(与项目共存,整个生命周期)
- master
- develop
Supporting branches 支持分支(阶段性生命周期)
-
Feature branches
一个开发周期得功能模块,命名规则 feature/-
-
Release branches
用于发布集成测试,命名规则 release/-
-
Hotfix branches
用于处理bug,命名规则 hotfix/-
Supporting Branch life cycle 支持分支得生命周期
-
feature branch
-
Creating a feature branch for feature/order
# 操作角色为Developer, Maintainer # 基于develop分支创建功能为订单模块得功能分支 $ git checkout -b feature/JIRA1-1.0.0 develop -
Finish a feature branch for feature/JIRA1-1.0.0
# 操作角色为Maintainer $ git checkout develop $ git merge --no-ff feature/JIRA1-1.0.0 $ git branch -d feature/JIRA1-1.0.0 $ git push origin develop此操作由项目所属得Maintainer(Teamleader)执行,我们会采用gitlab上merge request得方式执行达到以上效果
-
-
release branch
-
Creating a release branch for release/1.0.0-20221028
# 操作角色为Maintainer # 基于develop分支创建发布分支release/1.0.0-20220101 $ git checkout -b release/1.0.0-20221028 develop -
Finish release branch for release/1.0.0-20221028
# 操作角色为Maintainer $ git checkout master $ git merge --no-ff release/1.0.0-20221028 $ git tag -a 1.2 $ git checkout develop $ git merge --no-ff release/1.0.0-20221028 # 此步骤可选 $ git branch -d release/1.0.0-20221028此操作由项目所属Maintainer(Teamleader)执行,我们会采用gitlab上merge request得方式执行达到以上效果
-
-
hotfix branch
-
Creating the hotfix branch for hotfix/JIRA3-1.0.0
# 假定当前得master发布得版本是1.0 git checkout -b hotfix/JIRA3-1.0.0 master -
Finish hotfix branch for hotfix/JIRA3-1.0.0
# 操作校色为Maintainer $ git checkout master $ git merge --no-ff hotfix/JIRA3-1.0.0 # 假定线上版本对应的tag为1.0 $ git tag -a 1.0.1 # 注意: 当不存在未发布的release分支时,hotfix merge 到 develop, 不用merge 到 release $ git checkout develop $ git merge --no-ff hotfix/JIRA3-1.0.0 # 注意: 当存在未发布的release分支时,hotfix merge 到 对应的release , 不用merge 到 developer $ git checkout release/1.0.0-20221028 $ git merge --no-ff hotfix/JIRA3-1.0.0 # 操作校色为Maintainer, developer $ git branch -d hotfix/JIRA3-1.0.0此操作由项目所属Maintainer(Teamleader)执行,我们会采用gitlab上merge request得方式执行达到以上效果
-