Diff View

当 AI 建议对代码进行修改时,系统不会立即应用这些变更,而是以Diff View的形式展示所有变更,供开发者审查,确保开发者在应用任何修改前,能完全理解变更内容,并保留最终控制权。本文介绍如何使用Diff View审查、管理和应用这些变更,包括在单个或多个文件中进行块级别的接收与拒绝操作。

Diff 预览格式

Diff View通过颜色区分新增、删除和未修改的代码行:

  • 新增内容:新增的代码行以绿色高亮显示。

  • 删除内容:删除的代码行以红色高亮显示。

  • 上下文代码:未变更的上下文代码以中性颜色显示,以帮助定位变更在代码库中的具体位置。

这种内联差异格式使您能够:

  • 看看究竟会发生什么变化

  • 了解做出改变的原因

  • 评估它如何适应现有的代码库

然后,您可以选择接受、编辑或拒绝每个更改。

在单个文件中Diff View

当智能体完成任务后,系统会进入Diff View模式,您可以逐一审查文件中的变更,按照变更块或整个文件为单位进行应用。

变更块级别操作

能用于对单个、独立的变更块进行精细化控制。在每个更改块的右上角:

  • 接受:应用当前变更块的修改。

  • 拒绝:放弃当前变更块的修改。

文件级别操作

用于对当前文件内的所有变更建议执行批量操作,在文件的底部:

  • 全部接受:应用当前文件中的所有建议修改。

  • 全部拒绝:放弃当前文件中的所有建议修改。

  • 文件导航:切换到其他包含待处理变更的文件。

image

在多个文件中Diff View

当一次任务的变更涉及多个文件时,您可以集中管理这些跨文件的修改,所有受影响的文件名会显示在AI Chat面板的上方。针对多文件场景,提供以下操作:

  • 全局操作:对所有文件进行批量处理

    • 接受:应用所有文件中列出的所有变更。

    • 拒绝:放弃所有文件中列出的所有变更。

  • 文件级操作

    • 单击文件名:跳转到该文件的Diff View。

      image

    • 将鼠标悬停在文件名上即可仅查看该文件的拒绝接受选项

      image

这种多文件导航可以轻松管理复杂的跨文件重构。