评审
代码审查
在 ChatGPT 和 Codex 客户端中审查代码更改
使用 ChatGPT 或 Codex 检查代码更改,然后再提交或推送。
开始审查
在 ChatGPT Work 中,上传要审查的代码,或通过已安装的源代码 插件提供代码。在提示词中说明拉取 请求、分支、提交、文件和审查标准。
在应用中审查
打开审查窗格,了解发生了哪些更改、提供针对具体行的反馈, 并决定要暂存、还原、提交或推送哪些内容。
要让 Codex 审查更改,请在编辑器中输入 /review。选择
与基础分支比较审查或审查未提交的更改。Codex 会报告
按优先级排列的发现,但不会更改工作树。
审查窗格要求项目位于 Git 仓库中。如果项目 还不是 Git 仓库,应用会提示你创建一个。
输入 /review 以打开 CLI 审查预设。Codex 会启动专用审查器,
读取所选差异,并报告按优先级排列且可付诸行动的发现,
而不会更改工作树。
在 IDE 扩展编辑器中输入 /review。选择与基础
分支比较审查或审查未提交的更改。Codex 会报告按优先级排列的发现,
但不会更改工作树。
只有当打开的项目位于 Git
仓库中时,/review 命令才会出现。
选择审查范围
在提示词中指定要检查的拉取请求、分支、提交或文件。要 审查无法通过已安装的源代码插件访问的本地文件,请将其 上传到聊天中。
显示哪些更改
审查窗格反映的是 Git 仓库的状态,而不仅是 Codex 编辑的内容。它包括 Codex 所做的更改、你自己所做的更改,以及 仓库中的所有其他未提交更改。
默认情况下,审查窗格显示未暂存更改。使用已暂存查看 Git 索引,使用提交查看选定提交,使用分支查看与 基础分支的差异,或使用上一轮查看最近一次助手响应轮次。
审查多个仓库
当本地项目包含多个文件夹, 且这些文件夹分别由不同 Git 仓库支持时,审查窗格可以显示每个 仓库的更改。打开审查标题栏中的仓库选择器,即可检查 另一个仓库并查看新增或删除的行,无需离开 当前审查窗格。
选择上一轮可查看助手在所有已附加 仓库中所做的最新更改。在此视图中,仓库选择器会显示所有仓库。其他 审查范围(例如未暂存、已暂存和分支)适用于你 选择的仓库。
选择以下 /review 范围之一:
- 与基础分支比较审查会查找合并基点并审查你的分支差异。
- 审查未提交的更改包括已暂存、未暂存和未跟踪的文件。
- 审查提交会审查选定提交的确切更改集。
- 自定义审查说明会按照你提供的标准进行重点审查。
选择以下 /review 范围之一:
- 与基础分支比较审查会将当前分支与所选分支进行比较。
- 审查未提交的更改会审查工作树中的更改。
处理审查结果
审查发现会显示在网页聊天中。你可以要求提供证据、请求范围 更窄的后续审查,或让 ChatGPT 准备修订后的文件。
代码审查结果
审查发现会以行内注释的形式显示在审查窗格中。
默认情况下,审查在当前聊天中运行。在设置 > 常规 > 代码审查下,选择分离可启动单独的审查聊天。请参阅 开发者设置。
审查会作为一轮响应显示在对话记录中。如果希望审查使用不同于当前
会话的模型,请在 config.toml 中设置 review_model。
默认情况下,审查在当前聊天中运行。如果希望 /review
启动单独的审查聊天,请将 chatgpt.reviewDelivery 设为
detached。请参阅 IDE 扩展设置参考。
如果你让 ChatGPT 准备修订后的文件,聊天可用的工具和工作区 权限仍然适用。
如果你让 Codex 应用它发现的修复,你的常规沙箱和批准 设置仍然适用。
浏览审查窗格
- 点击文件名通常会在所选编辑器中打开该文件。你 可以在开发者设置中选择默认编辑器。
- 点击文件名的背景会展开或折叠差异。
- 按住 Cmd 并点击某一行,会在所选编辑器中打开该行。
- 如果你认可某项更改,可以将其暂存,或还原不需要的更改。
使用行内注释提供反馈
行内注释可让你将反馈直接附加到差异中的特定行。 这通常是引导 Codex 找到正确修复方法的最快方式。
要留下行内注释:
- 打开审查窗格。
- 将鼠标悬停在要评论的行上。
- 选择出现的 + 按钮。
- 编写并提交反馈。
- 留完反馈后,向聊天发送一条消息。
由于注释针对具体行,与一般性说明相比,Codex 可以作出 更精确的响应。
Codex 将行内注释视为审查指导。留下注释后,请发送一条 明确说明意图的后续消息,例如:“处理行内注释,并将更改范围保持在最低限度。”
拉取请求审查
当 Codex 拥有仓库的 GitHub 访问权限,并且当前项目位于 拉取请求分支时,ChatGPT 桌面应用可帮助你在不离开应用的情况下处理 拉取请求反馈。侧边栏会显示拉取请求 上下文和审查者的反馈,审查窗格则会在差异旁显示注释, 这样你就能在同一聊天中让 Codex 处理问题。
安装 GitHub CLI (gh) 并使用 gh auth login 完成身份验证,以便 Codex
加载拉取请求上下文、审查注释和已更改文件。如果 gh
缺失或未通过身份验证,拉取请求详情可能不会显示在侧边栏
或审查窗格中。
如果你希望在一处完成整个修复循环,请使用以下流程:
- 在拉取请求分支上打开审查窗格。
- 查看拉取请求上下文、注释和已更改文件。
- 让 Codex 修复你希望处理的特定注释。
- 在审查窗格中检查生成的差异。
- 准备就绪后,将更改暂存、提交并推送到拉取请求分支。
有关由 GitHub 触发的审查,请参阅在 GitHub 中使用 Codex。
暂存和还原文件
审查窗格包含 Git 操作,供你在提交前调整 差异。
你可以在以下级别暂存、取消暂存或还原更改:
- 整个差异:使用审查标题栏中的操作按钮,例如全部暂存或全部还原。
- 按文件:暂存、取消暂存或还原单个文件。
- 按区块:暂存、取消暂存或还原单个区块。
要接受部分工作时使用暂存;要丢弃更改时使用 还原。
已暂存和未暂存状态
Git 可以在同一文件中同时表示已暂存和未暂存的更改。发生这种 情况时,该窗格可能会在两个视图中显示同一文件。这是正常的 Git 行为。