Skip to content

检查点 (Beta)

⚠️ Beta 功能: 检查点功能目前处于 Beta 阶段,功能可能会有变动。

概述

自动跟踪并回退 Codebuddy 的编辑,快速恢复不需要的更改。

Codebuddy Code 在您工作时会自动跟踪 Codebuddy 对文件的编辑,让您能够快速撤销更改,并在出现问题时回退到之前的状态。


检查点的工作原理

当您与 Codebuddy 协作时,检查点功能会在每次编辑之前自动捕获代码的状态。这个安全网让您可以放心地执行大规模的任务,因为您随时可以恢复到之前的代码状态。

自动跟踪

Codebuddy Code 会跟踪其文件编辑工具所做的所有更改:

  • 每个用户提示都会创建一个新的检查点
  • 检查点会跨会话持久保存,因此您可以在恢复的对话中访问它们
  • 检查点会随会话在 30 天后自动清理(可配置)

回退更改

使用 /rewind 命令来打开回退菜单。您可以选择恢复:

  • 仅对话:回退到某条用户消息,同时保留代码更改
  • 仅代码:还原文件更改,同时保留对话
  • 代码和对话都回退:将两者都恢复到会话中的某个之前的时间点

常见使用场景

检查点在以下情况下特别有用:

  • 探索替代方案:尝试不同的实现方式,而不会丢失起始点
  • 从错误中恢复:快速撤销引入 bug 或破坏功能的更改
  • 功能迭代:在知道可以恢复到可用状态的前提下,放心地进行各种尝试

限制

Bash 命令的更改不会被跟踪

检查点不会跟踪通过 bash 命令修改的文件。例如,如果 Codebuddy Code 运行:

rm file.txt
mv old.txt new.txt
cp source.txt dest.txt

这些文件修改无法通过回退功能撤销。只有通过 Codebuddy 的文件编辑工具直接进行的编辑才会被跟踪。

外部更改不会被跟踪

检查点只跟踪在当前会话中被编辑过的文件。您在 Codebuddy Code 之外手动对文件所做的更改,以及来自其他并发会话的编辑,通常不会被捕获,除非它们恰好修改了与当前会话相同的文件。

不能替代版本控制

检查点设计用于快速的会话级恢复。对于永久的版本历史和协作:

  • 继续使用版本控制(如 Git)来管理提交、分支和长期历史
  • 检查点是版本控制的补充,而非替代品
  • 可以将检查点理解为"本地撤销",而 Git 是"永久历史"

另请参阅