使用检查点和编辑请求来还原更改
Visual Studio Code 中的聊天会话可能会导致工作区中一个或多个文件发生更改,手动还原这些更改可能很麻烦。例如,您可能希望优化之前的聊天请求、尝试不同的方法或从意外的更改中恢复。
本文介绍如何编辑之前的聊天请求以及如何使用检查点回滚聊天引起的文件更改。
编辑上一个聊天请求
聊天请求编辑功能自 VS Code 版本 1.102 起可用。
对话历史记录中的每个聊天请求都可编辑。当您编辑之前的聊天请求时,编辑后的请求将作为新请求发送到语言模型,并且原始请求及后续请求所做的任何文件更改都将被还原。
要编辑之前的聊天请求,请在“聊天”视图中选择要修改的请求,然后重新发送。您可以通过 chat.editRequests 设置来配置或禁用编辑体验。
使用检查点还原文件更改
检查点功能自 VS Code 版本 1.103 起可用。
聊天检查点提供了一种将工作区状态恢复到先前某个时间点的方法,当聊天交互导致多个文件发生更改时,此功能非常有用。
当启用检查点时,VS Code 会在聊天交互的关键点自动创建文件的快照,这样如果聊天请求所做的更改不符合您的预期,或者您想尝试不同的方法,您可以返回到一个已知的良好状态。
要启用检查点,请配置 chat.checkpoints.enabled 设置。
还原检查点
还原检查点时,VS Code 会将工作区恢复到该检查点所在的时间点的状态。这意味着所有在该检查点之后所做的文件更改都将被撤销。
将工作区恢复到之前的检查点
-
在“聊天”视图中,导航到聊天会话中的先前聊天请求。
-
将鼠标悬停在聊天请求上,然后选择“还原检查点”。

-
确认您要还原检查点并撤销该点之后的所有文件更改。
请注意,聊天请求将从对话历史记录中删除,工作区文件将恢复到检查点所在时间点的状态。
还原后的重做
还原到之前的检查点后,您可以重做被撤销的更改。如果您不小心还原到了某个检查点,此功能会很有用。
要重做还原检查点后的更改,请在“聊天”视图中选择“重做”。

查看检查点中的文件更改
为了帮助您了解每个聊天请求的效果,并更轻松地决定还原到哪个检查点,请启用 chat.checkpoints.showFileChanges 设置。此设置会显示在每个聊天请求结束时修改过的文件列表,以及每个文件中添加和删除的行数。

常见问题
检查点会取代 Git 版本控制吗?
不会。检查点旨在用于聊天会话中的快速迭代,并且是临时的。它们是对 Git 的补充,但不能取代 Git。请使用 Git 进行永久版本控制和协作。检查点最适合在活跃的聊天会话中进行实验。