治理与研发流程57 条

代码评审机制

代码评审用于找缺陷、传播知识与统一规范;有效实践包括小批量提交(小 PR)、自动化检查先行、明确评审时限与责任,避免评审成为瓶颈。

IT 管理与治理速查管理更新于 2026-10-13

代码评审是什么

代码评审用于找缺陷、传播知识与统一规范,是质量与知识流动的双重机制。有效实践包括小批量提交、自动化检查前置、明确评审时限与责任,避免评审变成瓶颈。评审发现的并不只是逻辑缺陷,更多是可维护性、边界条件与知识扩散。评审等待时间往往比评审本身更耗时,因此优化响应速度通常比要求更深入的评审更见效。

基本信息

目标缺陷、知识、规范三合一
实践小 PR、自动化前置、限时评审
度量评审等待时间、返工率、PR 规模
PR 规模建议单次改动控制在数百行以内
时限建议24 小时内给出首轮反馈
前置条件静态检查与单测先通过

典型使用场景

  • 功能开发:每个小改动一个 PR,便于逐条评审与回滚
  • 缺陷修复:附上复现步骤与测试用例,关注回归风险
  • 架构调整:先评审设计文档,再提交代码,避免返工
  • 新人产出:评审同时承担培训作用,重点解释原因
  • 安全敏感改动:鉴权、加密、数据导出等改动安排专人复核
  • 规范统一:把反复出现的评审意见沉淀为规范与自动化检查

PR 检查清单示例

PR 检查清单示例
□ 变更范围单一、描述清晰
□ 自动化测试与静态检查通过
□ 安全敏感点已标注
□ 回退方式说明
□ 关联需求或缺陷编号

评审关注点优先级

关注点说明示例
正确性逻辑是否满足需求与边界条件空值、并发与异常分支
安全性鉴权、输入校验与敏感数据SQL 拼接、越权访问
可维护性命名、结构与重复代码复制粘贴出的重复逻辑
测试覆盖新分支是否有对应用例新逻辑无自动化测试
回退与兼容是否影响存量数据与接口字段变更未做兼容处理
评审等待时间是交付前置时间的重要组成部分:优化评审响应,往往比要求更深入的评审更能缩短前置时间。

易错点

  • 巨型 PR:评审质量骤降,评论集中在格式而非逻辑
  • 评审无人响应:提交排队,交付节奏被拖垮
  • 评审只挑格式问题:真正风险被忽略,提交者也逐渐失去参与意愿
  • 把评审当唯一质量关口:缺少自动化测试与静态检查,评审被迫承担全部检查

数据来源与参考

  • 《Accelerate》(Forsgren, Humble, Kim)
  • Google 工程实践
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌