Claude Code 检查点

检查点是 Claude Code 的代码安全回退工具,能自动跟踪 Claude 对文件的编辑操作,帮你快速撤销不需要的更改,避免代码改坏后难以恢复。

检查点的工作原理

检查点会在你使用 Claude Code 时自动后台运行,全程无需手动配置:

  1. 自动创建:每次发送用户提示后,都会自动创建一个检查点,记录当前的代码状态
  2. 持久保存:检查点会在会话之间保留,即使关闭会话,下次恢复后仍能访问历史检查点
  3. 自动清理:超过 30 天的检查点会自动删除(清理时间可配置)

注意:仅跟踪 Claude 通过文件编辑工具 做出的直接修改,其他方式的更改不会被记录。


如何使用检查点回退更改

1. 打开回退菜单

有两种触发方式,任选其一:

  • 快捷键:按两次 EscEsc + Esc
  • 斜杠命令:输入 /rewind

2. 选择回退类型

打开菜单后,可根据需求选择三种回退模式:

回退类型 效果 适用场景
仅对话 回退到历史对话内容,保留当前代码更改 觉得对话方向跑偏,想重新提问,但代码改得没问题
仅代码 恢复文件到历史状态,保留当前对话 代码改坏了,但想继续基于当前对话调整
代码和对话 同时回退代码和对话到之前的状态 想彻底推倒重来,回到某个满意的节点

常见用例

检查点特别适合以下开发场景:

  1. 探索多种方案:尝试不同的代码实现思路,不满意就一键回退到起点,再换另一种方案
  2. 快速修复失误:当 Claude 的修改引入 bug 或破坏功能时,快速回退到修改前的可用状态
  3. 迭代功能开发:对功能做多次变体实验,随时恢复到某个稳定的中间版本

重要限制

检查点是临时安全网,不是万能的,要注意它的边界:

不跟踪 Bash 命令的更改
rm mv cp 这类通过 Bash 工具执行的文件操作,不会被检查点记录,无法回退。

不跟踪外部更改
只有当前会话内 Claude 编辑过的文件才会被跟踪。你在 VS Code、终端等外部工具里手动改的文件,或者其他会话的修改,都不会被捕获。

不能替代版本控制工具
检查点仅用于会话级的临时回退,不适合长期项目管理和团队协作。

  • 长期历史记录、分支管理 → 用 Git 等版本控制工具
  • 检查点 = 本地临时撤销,Git = 永久项目历史