第 9 章 · 01 检查点与回退


文档摘要

第 9 章 · 01 检查点与回退 本节摘要:检查点是会话状态的自动快照——每条用户输入都会生成一个,包含全部消息、文件修改与工具历史。想回去就按 或敲 ,六选项菜单决定还原范围。快照保留 30 天、最多 100 个, 也不再是回退的硬边界。检查点适合"快速试错、多方比较",但不跟踪 Bash 与外部改动、不能替代 git。配合上下文监控工具,你还能知道"该回退的时机"。 学习目标 阅读完本节,你应当能够: 说出检查点自动创建的规则与保留策略(30 天/100 个)。 背出 /rewind 六选项菜单并说出各自还原范围。 说出检查点的三条限制与"检查点+git 配合"的正确姿势。 复述分支探索模式(保存→试 A→回退→试 B→比较)。

第 9 章 · 01 检查点与回退

本节摘要:检查点是会话状态的自动快照——每条用户输入都会生成一个,包含全部消息、文件修改与工具历史。想回去就按 Esc+Esc 或敲 /rewind,六选项菜单决定还原范围。快照保留 30 天、最多 100 个,/clear 也不再是回退的硬边界。检查点适合"快速试错、多方比较",但不跟踪 Bash 与外部改动、不能替代 git。配合上下文监控工具,你还能知道"该回退的时机"。

学习目标

阅读完本节,你应当能够:

  1. 说出检查点自动创建的规则与保留策略(30 天/100 个)。
  2. 背出 /rewind 六选项菜单并说出各自还原范围。
  3. 说出检查点的三条限制与"检查点+git 配合"的正确姿势。
  4. 复述分支探索模式(保存→试 A→回退→试 B→比较)。

一、检查点是什么:会话状态的自动快照

检查点是会话状态的快照,包含三样东西:所有消息、文件修改、工具使用历史。关键特性是"自动":每条用户输入自动生成一个检查点,你什么都不用做。快照跨会话保留(几天前也能回退),但30 天后自动清理,且只保留最近 100 个——再老的会被丢弃,即使还在保留期内。

概念 说明
检查点 消息+文件+上下文的快照
回退 回到某检查点,丢弃其后更改
分支点 从同一检查点出发探索多种方案

二、打开方式与六选项菜单

两种打开方式:Esc + Esc(键盘),或 /rewind 命令(/checkpoint 是别名)。选中目标检查点后,菜单有六个选项:

  1. 还原代码和对话:文件和消息一起回到该点——最彻底的"后悔药"。
  2. 只还原对话:消息回退,当前代码保持原样。
  3. 只还原代码:文件回退,对话历史完整保留。
  4. 从这里压缩:把该点之后的对话压缩成 AI 摘要,腾出上下文空间;之前的消息原样保留,磁盘文件不动,原文保存在会话记录里。可选提供指令聚焦摘要主题。
  5. 压缩到这里:反向操作——把该点之前的全部内容压成摘要,该点之后的消息保持完整。与选项 4 配合,实现双向定向压缩
  6. 取消:回到当前状态。

两个细节:还原对话或压缩后,选中消息的原始提示词会恢复到输入框,方便你重发或编辑;v2.1.191 起 /clear 不再是硬边界——清空对话后仍能回退到清空前的检查点,找回之前的代码或上下文。

三、配置与限制

配置只有两个开关,默认即开:

{ "fileCheckpointingEnabled": true, "cleanupPeriodDays": 30 }
设置 默认 效果
fileCheckpointingEnabled true 每次编辑前快照文件,供 /rewind 还原(v2.1.119+;环境变量 CLAUDE_CODE_DISABLE_FILE_CHECKPOINTING)
cleanupPeriodDays 30 保留天数;v2.1.117 起统一治理四类磁盘缓存(会话检查点、~/.claude/tasks/、shell-snapshots/、backups/)

三条硬限制:Bash 的文件操作(rm/mv/cp)不追踪;Claude Code 外部(编辑器/终端)的改动不追踪;不能替代版本控制。v2.1.216 起,/rewind 也不会穿过符号链接/硬链接还原文件(会跳过并报告数量)。

检查点 vs git

维度 git 检查点
范围 文件系统 对话+文件
持久性 永久 会话级(30 天)
粒度 提交 任意点
速度 即时
共享 可以 有限

正确姿势:快速试错用检查点,定稿用 git——试验前让检查点兜底,成功的状态提交进 git。

四、实战模式:分支探索与安全重构

分支探索(A/B 对比):初始实现(检查点 A)→ 试方案 1(检查点 B)→ 回退到 A → 试方案 2(检查点 C)→ 比较 B 与 C → 选优继续。

安全重构:当前状态(自动检查点)→ 重构 → 跑测试 → 通过就继续,失败就回退换思路。

事故恢复:发现改坏了 → 回退到最后一个好状态。

五、什么时候该回退:上下文监控

回退的前提是"知道该回退"。会话越长,上下文窗口越满,模型质量会悄悄下降——你可能正拿着"半盲模型"写代码而不自知。社区工具 cc-context-stats 在状态栏实时显示上下文分区:Plan(绿,安全区,可规划可写码)→ Code(黄,别开新计划)→ Dump(橙,收尾并回退)。看到分区变橙,就该检查点重开,而不是硬撑着继续。

小结

检查点 = 每提示自动快照 + Esc+Esc 六选项回退,30 天保留、100 个上限,/clear 后可跨清空回退。六选项覆盖三种还原(全还原/只对话/只代码)与两种压缩(从这里/到这里)。边界清楚:不追踪 Bash 与外部改动,不是 git 的替代品——快速试错归它,永久存档归 git。分支探索四步法(试→存→退→比)是最高频用法;上下文监控告诉你回退时机。下一步进入"动手前先规划"的 Plan Mode。

下一节预告:第 2 节讲 Plan Mode 规划模式与 Ultraplan 云计划。


发布者: 作者: 灏天文库 转发
评论区 (0)
U