Dream
DocumentationDownload
聊天

审查与恢复更改

检查文件,查看代理回复的更改,并从检查点恢复选定的文件。

当启用 更改检查点 时,Dream会在每个代理回复之前以及回复完成后对项目文件进行快照。你可以使用这些检查点来查看回复具体修改了哪些文件,并在希望采取不同方法时恢复选定的文件。

检查点是如何工作的#

  • 一个检查点会将项目的工作树(包括未跟踪的文件)记录在 Dream 应用程序数据中的私有存储中。它不会在你的仓库中创建提交、暂存或分支,且可以在非 Git 仓库的文件夹中使用。
  • 项目中的 .gitignore 忽略的路径以及常见的构建文件夹(如 node_modules、dist、build 和 coverage)永远不会被捕获。
  • 你每发送一条消息,Dream 都会记录一次修改前的快照,并在响应完成或你停止响应时记录修改后的快照。
  • 检查点需要 Dream 可用 git 可执行文件。如果捕获失败或耗时过长,回复将不会进行检查点,其审查控制也不会显示。

检查点默认已开启。要关闭它们,请打开 设置 → 通用,找到 聊天消息,并关闭 更改检查点。

在设置 → 通用中启用“更改检查点”以在每个回复周围捕获文件。

审查回复的更改#

  1. 等待响应完成。
  2. 将鼠标悬停在助手消息上,点击消息页脚中的时钟图标查看此回复的文件更改。
  3. 在 此回复中的更改 中,查看文件列表。每一行显示路径、状态(已添加、已删除、已修改 或 已重命名)及其行数。
  4. 展开一行以查看差异。

该对话仅比较该回复的前后快照;其他回复或你自己的编辑产生的变化均不包含在内。如果响应被中断,对话会注明后状态是在你打开它时捕获的。

在回复之后文件再次发生更改,无论是来自后续回复、终端命令还是你的编辑器,都会显示一个“稍后编辑”徽章。二进制文件在没有差异的情况下列出。

恢复文件#

  1. 选择您想要恢复的文件。没有后续编辑的文件默认被选中;使用 全选 来包含所有文件。
  2. 点击 恢复。该按钮显示已选择的文件数量。
  3. 检查标记为 已恢复 的行,然后点击 关闭。

恢复会撤销回复对选定文件的修改,同时保留该文件之后所作的无关编辑。回复创建的文件会被删除,回复删除的文件会被重新创建,被重命名的文件会恢复到其之前的路径。

如果后续的编辑与回复的更改有重叠,Dream 会保持该文件不变并发出警告。选择 仍然覆盖 可以用其回复前的完整内容替换该文件,从而丢弃那些后续的编辑。

从对话框中无法撤销恢复操作。在恢复文件之前,请复制你需要的后续工作内容。恢复文件不会从对话中移除消息;在要求代理继续之前,请告知它恢复了哪些内容。

恢复属于文件操作,而非 Git 操作。恢复后请打开更改查看工作树,并在恢复同一文件之前保存编辑器中的草稿。

检查点存储#

只要其聊天仍然存在,检查点就会持续可用。从 设置 → 已归档聊天 中永久删除一个聊天会移除其检查点,完成或删除一个 工作树项目 会移除该项目的检查点。归档一个聊天会保留这些检查点。

为了尝试一种不同的方法同时保持之前的对话内容,可以结合使用恢复功能和从早期消息分支。仅分支操作会复制消息,而不会改变文件。