Skip to content

GitHub Copilot 可以作为 PR 评审者参与代码审查,在 Pull Request 的 Reviewers 面板中选择 Copilot 即可触发。它会以"Comment"评审的方式留下建议,不会 Approve 或 Request Changes,可以和人工审查并行使用。本页介绍触发方式、自定义指令和实际使用流程。

GitHub Copilot 代码审查:让 AI 当你的 PR Reviewer

什么是 Copilot 代码审查

GitHub Copilot 可以分析 Pull Request 的代码差异,并以评审者的角色留下行内注释,指出潜在问题、代码风格问题和改进建议。

注意:从 2026 年 6 月 1 日起,Copilot 代码审查会消耗 GitHub Actions 分钟数。

权限说明:组织成员即使没有个人 Copilot 订阅,只要管理员开启了允许无许可成员使用代码审查的设置,也可以使用此功能。

在 GitHub 上触发代码审查

  1. 创建或打开一个 Pull Request
  2. 在右侧 Reviewers 面板中,找到并选择 Copilot
  3. 等待约 30 秒,Copilot 会分析 PR 并留下评论

Copilot 的评审结果会以 Comment(非 Approve/Request Changes)形式出现。这意味着 Copilot 的审查不会直接影响 PR 的合并条件,人工 Reviewer 的审批决定仍然有效。

查看和处理 Copilot 的评论

Copilot 的行内评论和普通评审评论一样,你可以:

  • 直接采纳建议,修改代码后标记 resolved
  • 应用 Copilot 提供的代码建议(支持逐条或批量应用)
  • 使用 Copilot Cloud Agent 直接实现 Copilot 建议的改动

注意:你对 Copilot 评论的回复对其他人可见,但 Copilot 不会回复你的评论。如需进一步解释,在 Chat 中另开对话。

请求重新审查

修改代码后 Copilot 不会自动触发重新审查。需要时点击 Reviewers 面板中 Copilot 名字旁边的刷新按钮

注意:Copilot 可能会重复之前已经 dismissed 的评论,这是已知行为。

在 IDE 中触发代码审查

除了在 GitHub 网站上,Copilot 代码审查也支持在 IDE 中直接触发:

VS Code

在 Source Control 面板中,对比文件差异后,找到 Copilot 代码审查入口触发。

JetBrains

通过 GitHub Pull Requests 插件面板,在 PR 详情页找到 Copilot Review 入口。

GitHub Mobile

在移动端 PR 页面,同样支持请求 Copilot 审查。

用 custom instructions 定制审查风格

你可以在 .github/copilot-instructions.md 中为代码审查添加专项指令:

markdown
## 代码审查指令

进行代码审查时,用中文回复所有评论。

进行代码审查时,重点关注以下安全检查:
- SQL 注入防护(禁止字符串拼接构造 SQL)
- 敏感信息不写入日志
- API 响应不暴露内部错误栈

进行代码审查时,避免嵌套三元运算符,建议改用 if-else。

进行代码审查时,检查 /security/security-checklist.md 中定义的所有安全规范。

重要限制:Copilot 代码审查只读取 custom instructions 文件的前 4000 个字符,超出部分会被截断,请把最重要的指令放在前面。

启用自动审查

如果希望每个 PR 自动触发 Copilot 审查,不需要手动选择 Reviewer,可以在仓库或组织的 GitHub Copilot 设置中开启 Automatic code review 选项。

常见问题

Q: Copilot 的代码审查质量怎么样?

A: 在检测常见问题(命名、空指针、简单的安全漏洞)上表现不错,但对复杂业务逻辑的理解仍然有限。建议把 Copilot 审查作为"初筛",帮助发现低级错误,人工审查负责把关业务逻辑和架构决策。

Q: Copilot 审查和 GitHub Advanced Security 的 CodeQL 有什么区别?

A: CodeQL 是静态分析工具,专注于代码安全漏洞检测,基于规则引擎,确定性强。Copilot 审查是 AI 生成的,覆盖范围更广(代码风格、可读性、最佳实践),但不如 CodeQL 在安全漏洞检测上精准。两者互补,不是替代关系。

Q: 我的仓库是私有的,Copilot 审查会把代码发送到哪里?

A: Copilot 处理的代码遵循 GitHub 的数据处理协议。Copilot Business/Enterprise 用户的代码不会用于 Copilot 的模型训练,详见 GitHub 隐私声明