审查 AI 生成的代码编辑
当您在 Visual Studio Code 中与聊天交互时,AI 可以跨项目中的多个文件生成代码编辑。本文将介绍如何审查、接受或放弃这些 AI 生成的代码编辑。
待定更改
一旦 AI 更改了您的文件,这些更改会直接应用并保存到磁盘。VS Code 会跟踪哪些文件有待定编辑,并允许您逐个或全部审查它们。
聊天视图显示了已编辑且待您审查的文件列表。待定编辑的文件在资源管理器视图和编辑器选项卡中也会有一个指示器,带有方点图标。

当您打开一个已更改的文件时,编辑器会显示已应用更改的内联 diff。
当您关闭 VS Code 时,待定编辑的状态会被记住,并在您重新打开 VS Code 时恢复。
审查更改
使用编辑器覆盖控件,您可以通过 向上 和 向下 控件在建议的编辑之间导航。使用 **保留** 或 **撤销** 按钮来接受或拒绝给定文件的编辑。

当您将鼠标悬停在内联更改上时,覆盖控件允许您接受或拒绝单个更改。在聊天视图中,您可以一次性接受或拒绝所有文件中的所有更改。
源代码集成
如果您在源代码控制视图中暂存更改,所有待定编辑都将被自动接受。另一方面,如果您放弃更改,所有待定编辑也将被放弃。
自动接受编辑
您可以通过 chat.editing.autoAccept 设置配置 VS Code 在特定延迟后自动接受 AI 生成的代码编辑。通过将鼠标悬停在编辑器覆盖控件上,您可以取消自动接受倒计时。
如果您自动接受所有编辑,强烈建议在将更改提交到源代码控制之前仍然审查这些更改。了解更多关于 在 VS Code 中使用 AI 的安全注意事项。
编辑敏感文件
为防止意外编辑敏感文件(例如工作区配置设置或环境设置),VS Code 会提示您在应用编辑之前进行批准。在聊天中,您可以查看拟议更改的 diff 视图,并选择批准或拒绝它们。
使用 chat.tools.edits.autoApprove 设置来配置需要批准的文件。该设置使用 glob 模式来匹配工作区中的文件路径。
以下示例配置将自动允许编辑除 .vscode 文件夹中的 JSON 文件以及名为 .env 的文件之外的所有文件,您将被提示批准这些文件。
"chat.tools.edits.autoApprove": {
"**/*": true,
"**/.vscode/*.json": false,
"**/.env": false
}