审查AI生成的代码编辑

当你在Visual Studio Code中与聊天互动时,AI可以生成跨多个项目文件的代码编辑。本文解释了如何审查、接受或丢弃这些AI生成的代码编辑。

待定变更

一旦AI对你的文件做了更改,这些内容会直接应用并保存到磁盘上。VS Code 会跟踪哪些文件有待编辑,并允许你单独或一次性全部查看。

聊天视图显示已编辑且正在等待你审核的文件列表。待编辑文件在资源管理器视图和编辑器标签页中也会有一个方形点图标的指示器。

截图显示聊天视图,突出显示已更改的文件列表和资源管理器视图和编辑器标签中的指示。

当你打开被更改的文件时,编辑器会显示应用更改的内联差异。

关闭 VS Code 时,待处理编辑的状态会被记住,并在重新打开 VS Code 时恢复。

评论变更

请按照以下步骤审查文件中AI生成的代码编辑:

  1. 通过在聊天视图中的更改文件列表或资源管理器视图中选择待处理编辑文件,打开该文件。

  2. 使用编辑器覆盖层中的“上”“向下”控制,在文件内切换各个编辑。

  3. 每次编辑时,请选择以下作之一:

    • 选择保留以接受编辑。
    • 选择撤销以拒绝编辑并恢复更改。
    • 将鼠标悬停在内联更改上,即可接受或拒绝该更改,而不影响文件中的其他编辑。
  4. 或者,在聊天视图中一次性接受或拒绝所有文件的所有更改。

截图显示编辑器的拟议修改,突出编辑器叠加控制中的审核控制。

以下快捷键帮助你导航和审核编辑内容:

行动 快捷键
导航至下一编辑 在编辑器叠加层下方
返回上一编辑 在编辑器叠加层

源代码控制集成

如果你在源控制器视图中进行临时调整,任何待处理的编辑都会自动被接受。另一方面,如果你丢弃了修改,所有待处理的修改也会被丢弃。

自动接受编辑

你可以配置 VS Code 在可配置的延迟后自动接受 AI 生成的代码编辑,使用

chat.editing.autoAccept
  • 在VS代码中打开
  • 在VS Code Insiders中开放
环境。将鼠标悬停在编辑器覆盖层控件上,停止自动接受倒计时。

重要

如果你自动接受所有编辑,强烈建议在提交文件前先审查更改内容。了解更多关于在VS Code中使用AI的安全考虑

编辑敏感文件

为了防止对敏感文件(如工作区配置设置或环境设置)的无意编辑,VS Code 会提示你在编辑应用前先批准。在聊天中,你可以查看拟议更改的不同视图,并选择批准或拒绝。

使用该

chat.tools.edits.autoApprove
  • 在VS代码中打开
  • 在VS Code Insiders中开放
设置以配置哪些文件需要批准。该设置使用球状图案来匹配工作区中的文件路径。

以下示例配置自动允许编辑除 JSON 文件外的所有文件.vscode文件夹和文件命名.env,提示您批准:

"chat.tools.edits.autoApprove": {
  "**/*": true,
  "**/.vscode/*.json": false,
  "**/.env": false
}