首页/开发/代码质量与评审速查/提交前自审:先读一遍自己的 diff
代码评审64 条

提交前自审:先读一遍自己的 diff

请评审前的自审步骤:通读完整 diff、删除调试残留与无关文件、确认注释与描述准确、跑一遍本地校验与测试。

自审是什么

自审就是在请人评审之前,把自己的完整 diff 当成别人的代码通读一遍。它的目标很具体:找回不该出现的内容(调试输出、注释掉的代码、无关文件),确认描述与改动一致,跑掉能在本地发现的低级问题。一次自审通常能省下一整轮评审往返,是投入产出比最高的一步。

基本信息

时机改动完成、提交评审之前
读什么完整 diff,而不是只看自己记得改的那几处
看什么调试残留、无关文件、注释与描述是否准确、空白错误
配套动作跑一遍本地测试与静态检查,确认结果可复述

自审命令示例

自审命令示例
git diff            # 通读工作区改动
git diff --stat     # 先看文件清单与规模
git diff --check    # 查空白错误与冲突标记
# 再看:调试输出、注释掉的代码、TODO、临时文件是否清掉

逐项自问

  • 文件清单里有没有不该出现的文件(本地配置、日志、测试数据)。
  • 调试输出、临时开关、注释掉的旧代码是否清干净。
  • 描述里写的改动范围,与 diff 实际范围是否一致。
  • 本地测试与静态检查跑过吗,结果说得清吗。
  • 有没有把无关的格式化改动混进来,制造大量噪声。
  • 提交信息与改动范围是否一致:写「修复登录」却夹带依赖升级,会误导后来人。

自审能拦住什么

问题评审阶段的代价
调试输出残留评审者提出来,作者再改一轮
误提交无关文件需要撤回提交或补一个清理提交
描述与实际不符评审者按错误前提评审,方向可能跑偏
本地测试未跑CI 报错后重新排队,交付延后
混入格式化改动真实改动被淹没,评审质量下降
把 diff 当别人的代码来读:视角一换,很多低级问题当场就能发现。
自审不必追求一次看全:先扫文件清单与规模,再逐块细读,最后确认描述与验证方式。

易错点

  • 跳过自审直接请人评审:低级问题消耗评审者注意力,真正的问题反而被忽略。
  • 只跑测试不看 diff:调试代码与误提交的文件照样进评审。
  • 只重读自己记得改的那几处:最容易出问题的是顺手改动的边角。
  • 自审就是重新看一遍代码却不看文件清单:无关文件混入往往到合并后才被发现。

数据来源与参考

  • Google Engineering Practices · The CL Author's Guide(自审建议)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌