来自 技术 2019-04-17 00:00 的文章

开发流程

八年Java开发的感悟:什么才是程序员的立身之本>>>   

1. 分支说明master : 对应线上生产环境dev : 开发联调环境,后端开发完可将代码合并到此分支供前端联调test : 测试环境,前后端联调完后代码合到此分支送测2. 开发流程

多人开发时代码容易冲突,最后上线合并mater时容易出错,所以规范流程。以下流程以1.0.0版本为例

同步最新master代码,基于master新建分支v1.0.0,推送到远程v1.0.0开发人(e.g:泽华)基于v1.0.0新建自己的开发分支v1.0.0_bzh进行开发开发完将代码合到dev分支进行联调(前端可选择是否需要这一步)联调没问题将开发分支v1.0.0_bzh代码合到v1.0.0分支并推送到远程将1.0.0分支代码合到test分支送测测试通过将v1.0.0合到master上线

说明:

禁止在v1.0.0、dev、test分支直接改代码在当前分支操作之前一定要先同步远程代码,mater、dev、test、v1.0.0,git pull开发完送测时先合到v1.0.0分支是为了同步其他开发人的代码,这样就算有冲突解决也是自己解决。线上紧急BUG修复:基于master新建hotfix分支,然后流程与上面开发1.0.0一样,修复完只需将hotfix分支合到master即可。
3. 流程图说明1. 开发阶段


2. 送测


3. 上线


4. Code Review

CodeReview方式应是强制+事前+小片段+线上交流+高频率.每完成一个需求功能点需做一次Code Review,这样才能做到严格把控代码质量.开发阶段由开发分支合并到版本分支时,如v1.0.0_wjj -> v1.0.0,触发Code Review.

将开发分支push到远程对应的分支,去Merge Request页面New merge Request选择源分支、目标分支,填写PR标题、详情,指派给指定人被指派人会收到网页、邮箱通知(邮箱绑定微信,有微信通知)点击进去查看代码对比进行CR,可实时针对某行添加discussions,提交人会收到discussionsCR完且所有discussions are resolved,点merge完成,代码会自动合并到目标分支