Git分支管理策略

1、总览

  • master:主分支,主要用来版本发布。
  • dev:日常开发分支,该分支正常保存了开发的最新代码。
  • dat:测试分支,所有要测试的功能合并到该分支。
  • uat:定义为预生产分支,只有要上线的功能才合并到该分支。
  • feature:具体的功能开发分支,只与 dev分支交互。
  • release:release 分支定义为一个功能的发行版,当feature开发完成后,合并到dev,然后从dev拉取的一个分支。一个功能对应一个release分支。该分支的主要功能为dat测试bug修改。
  • hotfix:线上 bug 修复分支。

2、功能开发

2.1 创建一个feature分支

 
  
>$ git branch //查看当前分支  dat
  dev
* master
  uat

 
  
>$ git checkout -b feature-1 dev //从dev拉取feature分支
$ vi test.html //working
$ git status
$ git add .
$ git commit -m 'test' //提交
$ git checkout dev
$ git merge --no-ff feature-1 //开发完成,合并到dev
一个功能开发完成,合并到dev,建议merge时加上 —no-ff 参数—no-ff参数的作用如下:

2.2 创建一个release分支

git checkout -b release_1 dev   // 从dev拉出一个release分支

git checkout dat

git merge --no-ff release_1    // 从release_1合并到dat分支

2.3 如果在dat测试有bug

git checkout release_1

vi test.html

git add .

git commit -m "bug修改"

git checkout dat

git merge --no-ff release_1

2.4 当dat测试通过后,将release分支合并到uat和dev分支下

git checkout uat

git merge --no-ff release_1

git checkout dev

git merge --no-ff release_1

2.5 当uat测试有bug

git checkout release_1

vi test.html

git add .

git commit -m "bug修改"

git checkout uat

git merge --no-f release_1

2.6 当测试通过后,将其合并到dev和dat分支下

git checkout dev

git merge --no-f release_1

git checkout dat

git merge --no-f release_1

git branch -d release_1

2.8 当uat测试通过后,将uat合并到master分支

git checkout master

git merge --no-ff uat

git tag -a v1.0 -m '新功能上线'

2.9 当master有bug,创建hotfix分支

git checkout -b hotfix_1 uat

vi test.html

git add .

git commit -m '修改bug'

git checkout uat

git merge --no-ff hotfix_1

git checkout master

git merge --no-ff uat

git tag -a v1.1 -m "修改bug"

git checkout dat

git  merge --no-ff hotfix_1

git checkout dev

git merge --no-ff hotfix_1



你可能感兴趣的:(开发工具)