Code Review,也就是我们常说的代码评审。Code Review 主要是在软件开发的过程中,对源代码进行同级评审,其目的是找出并修正软件开发过程中出现的错误,保证软件质量,提高开发者自身水平。

两个概念

硅谷大部分公司都使用 GitHub 企业版管理代码仓库,GitHub 里的 Commit 和 PR 的概念在代码审核中非常重要。

  • Commit
    是可以单独保存的源代码的最小改动单位。
  • PR(Pull Request)
    是一次代码提交请求。一个 PR 可以包含一次 Commit,也可以是多个。提交请求后 GitHub 会在相关页面上显示这次提交请求的代码和原代码的所有不同之处,这就是本次PR 的所有改动。

    代码合并规则

    提交代码的类型

    Code Review 之前,要搞清楚提交的代码到底是干嘛的,然后进行针对性的审核。一般把提交的代码分成四类:
  1. Bug 修复
    一般公司都有独立的 Bug 追踪和管理系统,每个 Bug 都有一个票据。代码提交的 PR,一般和票据是关联的。
  2. 代码优化
    比如文件的移动和拆分,部分函数的重构等。
  3. 系统迁移
    包括代码库拆分,用另一种语言重写等。
  4. 新系统和新功能
    新功能在实现之前都需要进行设计审核,最终版本的设计文档会包括数据库的 Schema、API 的签名( Signature )、代码的流程和模块等内容;相关代码的提交,也就是 PR,一般是和设计文档挂钩的。