Git分支管理流程

今天合并代码时又碰到了游离分支的问题,一直没有什么好的解决方案,不确定是否与我的分支管理机制有关。

一、我们的分支管理(研发)流程

1、Master对应生产环境版本,生产环境发布脚本只允许连接Master分支。
2、每隔三个星期左右,整理出近段时间的需求,排好开发计划,定义好产品版本。
3、根据产品版本创建对应的分支 比如一次创建三个分支V2021_08_11_V6.7.1 、               V2021_08_11_V6.7.2、   V2021_08_11_V6.7.3
      如果有紧急需求或BUG会在这分支中间插入分支名为_fixbug之类。
4、各开发小组在对应的分支开发,提交代码。
5、分支2021_08_11_V6.7.1 开发完成,由开发人员在测试环境发布该分支 ,然后通知测试进行功能测试。
6、测试完成后通知我进行合并代码到Master,合并时我有时会Review代码,如果有不符合代码规范的,让开发人员在分支上重新修改提交。
7、测试对Master分支进行回归测试,如果有Bug,开发人员在原分支修改好,分支测试通过,然后我又合并代码到Master分支,测试重新回归,直至没有任何Bug。
8、生产环境Master分支发布后,各开发人员在后续的分支将Master合并过去,有代码冲突解决掉,继续开发。
9、生产环境发布后回归完成,测试会在文档上记录版本号和对应这次发布的功能点,然后将发布内容提交给业务方以及BOSS。
10、持续这样的迭代过程。

注:这种分支管理流程除了偶尔会造成有游离分支,没有发生代码被覆盖的情况(开始的时候少了从Master往各开发分支合并的步骤发生过代码丢失的情况),但是发生游离分支,折腾了几次都没有办法解决,一般是让对应的开发做好备份,然后我重新创建一个分支,开发人员将游离分支的代码迁移到新的分支,然后我再合并到Master,这样当代码改动分散在各模块中特别麻烦,后端Java还好,前端Vue页面和JS代码头都要大了,已经发生过多次了。

二、Git教程建议流程

1、Master分支用来发布版本
2、开发都在dev分支上,dev分支不稳定,从dev分支拉出测试分支。
3、开发人员从dev分支开出自己本地分支,在自己本地分支开发,自测完成后,合到dev 然后push到远程dev
4、在发布时间节点 ,由专业运维合并到Master进行发布。
这种流程没有实践过,现在大厂都是按第二套流程做的吧,第一套流程只适合小公司,需求相对集中的情况,关于游离分支怎么解决读者有好方案给我留言,分支管理和Git版本机制有些复杂,实在是没时间去完整地学习。。

三、2023年分支管理(补充)

根据项目需求,创建分支,以发布日期来定义分支名称。
开发分支:本周开发的分支,一直沿用develop分支,开发人员可以从develop根据每一个需求任务(JIRA任务单号)创建自己本地分支,自测完成后将其合到develop,部署在开发环境供前端联调。
测试分支:每周五,从develop拉出测试分支(该分支下周测试,下下周一发布),部署在测试环境供测试人员进行测试。
发布分支:每周五,从本周已经完成的测试分支合并到Master,回归完成后,下周一发布到生产环境。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值