敏捷开发之道

修改代码之道 Merge Request Rules

2023-12-01  本文已影响0人  老瓦在霸都

Merge Request Rules

代码修改过后提交主干分支的合并请求称为 Merge request , 在 github 中也称 Pull request

在实践过程中,总结了如下的规则

  1. 如无特殊需求,所有的开发都是基于 master branch 的, merge request 来自于你的开发分支(feature branch, hot-fix branch, etc) 与 master branch 的比较

  2. 所有对于 master branch 的改动都必须通过 merge request 完成

  3. 所有的 merge request 必须引用一个对应的 git issue (user story or bug)

git commit -m "this is my commit message. Ref projectname#xxx" 
git commit-m "fix memory leak issue. Ref issue#123"
  1. Merge request 必须至少由一位相关领域的同事 Review 并 approve 后, 才可以合并

  2. Merge request 不宜过大,一般在200行之内,最多不超过 500行,较大的改动推荐分批审阅

  1. Merge request 应该有相应的描述信息,让 Reviewer 知道 MR 的目的,动机和范围,比较大的改动需要有附上相关的设计文档

  2. Merge Request 要通过 CI pipeline 所定义的单元测试,集成测试,静态代码扫描(没有编译及代码静态分析警告)

  1. Merge Request 在合并到主分支时应只包含一个 commit, 如果有多个 commit 请合并成一个(rebase and squash),在 Commmit message 中包含相关的 git issue, 其目的是为了有效地回溯代码历史, 以便快速定位引入问题的提交

  2. Merge Request 牵涉到功能性的改动,要有足够的日志(log)或度量(metrics), 以便在产线上检查及 debug

  3. Merge Request 如果有不确定的风险或者用户体验上的变动,要能够用 feature toggle 或 configure item 启用或关闭相应的变动

上一篇下一篇

猜你喜欢

热点阅读