git常见规范
发布时间:2023-12-26 21:24:54
热度: 153 ℃
<p style="text-align: center;"> git规范文档</p><p><br></p><p> 一、分支划分及分支说明</p><p>master (主分支)</p><p>master 为主分支,也是用于部署生产环境的分支,确保master分支稳定性</p><p>master 分支一般由develop以及hotfix分支合并,任何时间都不能直接修改代码</p><p>develop (开发分支)</p><p>develop 为开发分支,始终保持最新完成以及bug修复后的代码</p><p>feature分支和bugfix分支都是基于develop分支下创建的</p><p><br></p><p>feature (功能开发分支)</p><p>开发新功能时,以develop为基础创建feature分支</p><p>不同的功能创建不同的功能分支,开发完成自测没问题后,需要合并该分支到 develop 分支,之后删除该分支</p><p>分支命名: feature/ 开头的为特性分支, 命名规则: feature/user_module、 feature/cart_module</p><p><br></p><p>release(发布分支)</p><p><br></p><p>release 为预上线分支,发布提测阶段,会release分支代码为基准提测</p><p>当有一组feature开发完成,首先会合并到develop分支,进入提测时,会创建release分支。</p><p>如果测试过程中若存在bug需要修复,则直接由开发者在release分支修复并提交。</p><p>当测试完成之后,合并release分支到master和develop分支,此时master为最新代码,用作上线。</p><p><br></p><p>bugfix (BUG修复分支)</p><p><br></p><p>用于修复某个普通的 bug,该分支从 develop 分支创建,修复完成自测没问题后,需要合并该分支到 develop 分支,之后删除该分支</p><p><br></p><p><br></p><p>hotfix:(热修复分支)</p><p>用于修复某个紧急的 bug,该分支只有在紧急情况下使用,该分支从 master 分支创建,用于紧急修复线上的 bug,修复完成自测没问题后,需要合并该分支到 master 分支,以便上线,同时需要再合并该分支到 develop 分支,之后删除该分支</p><p><br></p><p> 二、开发流程</p><p><br></p><p>开发流程:</p><p>1、开发功能分支:从develop 分支切出一个新分支,根据是功能还是 bug,命名为 feature/* 或 bugfix/* 分支。开发者完成开发,提交该分支到远程仓库。</p><p>2、合并分支:开发者发起 merge request 请求(可在 gitlab 页面 New merge request),将新分支请求合并到 develop 分支,并提醒组长或同事进行 code reviewer。</p><p>code reviewer后,若无问题,则接受 merge request,并将新分支合并到 develop 分支,同时可以删除新建分支;若有问题,则不能进行合并,可 close 该请求,同时通知开发者在新分支上进行相应调整,调整完后提交代码,重复 code reviewer 流程。</p><p>3、提测:提测时直接从当前 develop 分支合并到 release 分支,重新构建测试环境,完成转测。</p><p>4、上线发布:从release分支合并到 master分支,基于master分支构建生产环境完成上线,并对 master分支打tag,tag名可为v1.0.0_2019032115(即:版本号_上线时间)</p><p>5、进行版本发布</p><p>三、常见的分支处理流程</p><p>1、开发流程<br><p><img src="https://ask.qcloudimg.com/http-save/yehe-6090469/857e63c57afb10906f0cee12604039c2.png"></p><p>2、并行开发测试环境 Bug 修复流程</p><p><img src="https://ask.qcloudimg.com/http-save/yehe-6090469/4aac6bf4e435e8865064ab99a101cf8e.png"></p><p>3、生产环境 Bug 修复流程</p><p><img src="https://ask.qcloudimg.com/http-save/yehe-6090469/cf9d3929ebb9ba7f2153484acb5b1855.png"></p></p><div><br></div>