教程

Claude Code Checkpointing 完全指南:5 种回退选项、「摘要」vs「恢复」与三大局限

Claude Code Checkpointing 完整指南:工作原理(每次用户提示自动保存/跨会话持久/30 天清理)、打开回退菜单(Esc×2 或 /rewind)、5 种操作(Restore code+conversation/仅 code/仅 conversation/Summarize from here/Never mind)、「恢复」vs「摘要」深度对比(摘要不修改文件/保留早期上下文/vs /compact 全局压缩/可选说明引导)、与 Fork(--fork-session)区别、5 大使用场景推荐对照表,以及三大局限性(Bash 命令不追踪/外部变更不追踪/不能替代 Git 对比表)。

2026/3/94分钟 阅读ClaudeEagle

Checkpointing 是 Claude Code 内置的会话安全网——在每次编辑前自动保存代码状态,让你随时回退到任意历史节点,无需依赖 Git。

工作原理

Claude Code 在每次用户提示词创建前自动生成 Checkpoint:

  • 覆盖范围:所有通过 Claude 文件编辑工具修改的文件
  • 跨会话持久:续接对话时仍可访问历史 Checkpoint
  • 自动清理:随会话在 30 天后清除(可在 settings.json 中通过 cleanupPeriodDays 配置)

Checkpointing 只追踪 Claude 的文件编辑工具的变更,不追踪 Bash 命令(rmmvcp 等)产生的文件变化。

打开回退菜单(2 种方式)

bash
# 方式一:快捷键
Esc + Esc     # 连按两次 Esc

# 方式二:命令
/rewind       # 别名:/checkpoint

5 种回退/操作选项

在回退菜单中,滚动列表显示本次会话的所有提示词,选择目标节点后,有 5 个操作:

选项效果
Restore code and conversation代码文件和对话历史回退到该节点
Restore conversation对话历史回退,代码保持当前状态
Restore code代码文件回退,对话历史保持当前状态
Summarize from here从该节点起压缩后续消息为摘要(不修改文件)
Never mind返回消息列表,不做任何操作

恢复对话或摘要操作后,所选消息的原始提示词自动填回输入框,可直接重发或修改后重发。

「恢复」vs「摘要」深度对比

三种恢复选项

回退状态:撤销已做的事情。

  • 代码回退:磁盘文件恢复到该时间点的状态
  • 对话回退:后续消息从历史记录中移除
  • 组合回退:同时撤销代码和对话

「Summarize from here」

压缩上下文,不回退

  • 选中节点之前的消息完整保留
  • 选中节点及之后的消息被 AI 生成的摘要替换
  • 磁盘文件不变
  • 原始消息保留在会话记录中,Claude 需要时可以引用细节

/compact(压缩整个对话)的区别:

  • Summarize from here:保留早期上下文完整细节,只压缩后期冗余内容
  • /compact:压缩整个对话历史

可以传入可选说明,引导摘要的关注重点:

# 在回退菜单输入框中输入 Summarize focusing on the architecture decisions

与 Fork 的区别

如果你想保留原始会话,同时在一个新分支尝试不同方案:

bash
claude --continue --fork-session

这会创建一个新 Session ID,不影响原始会话。而「Summarize from here」和「Restore」都在同一会话内操作,无法保留原始状态。

常用场景

场景推荐操作
Claude 修改了错误的文件Restore code — 撤销文件,保留对话继续沟通
整个方向跑偏了Restore code and conversation — 完全重来
调试对话太冗长,但代码是对的Summarize from here — 压缩对话,释放上下文空间
想试试不同实现,又不想丢掉当前版本Fork--fork-session)— 保留原版,新开分支
对话混乱,代码没问题Restore conversation — 只清理对话历史

三大局限性

1. Bash 命令变更不追踪

bash
# 这些操作无法通过 Checkpoint 撤销:
rm file.txt
mv old.txt new.txt
cp source.txt dest.txt
npm install  # 修改 node_modules

只有 Claude 的文件编辑工具(Edit/Write)的变更才被追踪。通过 Bash 工具执行的文件操作不可撤销

2. 外部变更不追踪

  • 你在 Claude Code 外部手动修改的文件
  • 其他并发 Claude Code 会话的修改

除非这些外部变更恰好修改了当前会话也编辑过的同一文件。

3. 不能替代版本控制

Checkpointing 是「会话级本地撤销」,Git 是「永久历史」——两者互补,不能互相替代:

功能CheckpointGit
撤销粒度按提示词按 Commit
持久性30 天(可配置)永久
协作不支持支持
分支通过 Fork 间接实现原生支持

原文:Checkpointing - Claude Code Docs | 来源:Anthropic 官方文档

相关文章推荐

教程Claude Code Checkpointing 完全指南:会话回退、代码还原与 /rewind 分叉工作流Claude Code Checkpointing 完全指南:三种操作模式(代码回退/对话回退/摘要压缩)、/rewind 和 /fork 命令用法、分叉多方案探索工作流(从同一节点并行尝试 approach-a 和 approach-b)、Esc+Esc 快捷键,以及 Checkpointing 与 Git 的能力对比和最佳实践建议。2026/3/5教程Claude Code Skills 进阶:动态上下文注入、路径限定激活和 Subagent 集成深度指南Claude Code Skills 三个高级特性深度指南:动态上下文注入(!! 命令预处理原理、内联和多行语法、实战健康检查 Skill 含 6 个命令块、安全注意事项);路径限定自动激活(TypeScript 严格模式/SQL 安全/React 组件三个实战示例);context: fork 在 Subagent 运行(适用场景判断、agent 类型选择);以及三种特性组合的完整 PR 审查 Skill 示例。2026/5/10教程Claude Code Skills 官方完整指南:从入门到高级模式的权威教程Claude Code Skills 官方文档完整中文整理:Skills vs CLAUDE.md 核心区别;目录结构;存储位置和优先级;实时变更检测和 Monorepo 自动发现;完整 Frontmatter 字段参考(20+字段);字符串替换(动态参数);内容类型(参考类 vs 任务类);调用控制表;Skill 内容生命周期(压缩保留机制);三个高级模式(动态注入/路径限定/Subagent运行);以及内置 Bundled Skills 和权限控制方法。2026/5/10教程Claude Code Slack 集成完整指南:团队协作、CI 通知和权限管理Claude Code Slack 集成完整指南:5 大核心功能(频道触发任务/代码问答/CI 通知/PR 审查/Routines 结果推送);安装配置步骤;4 个权限等级(read/write/execute/pr)及频道级配置;人工审批工作流;GitHub Actions + Slack 通知自动化;4 个团队协作场景(新人上手/PM 提需求/频道分工规范/结构化请求模板);以及官方 Slack 集成 vs OpenClaw 方案的对比。2026/5/8教程Claude Code 定时任务完整指南:/schedule、Routines 三种触发方式和 /loop 监控/schedule 命令和 Routines 完整指南:/schedule 创建/查看/运行/编辑/删除定时任务;Routines 三种触发方式(Cron 定时/GitHub 事件/Webhook API /fire 端点);4 个实战 Routine 配置(每日健康检查/PR 自动质量门/每周技术债扫描/CI 失败分析);/loop 会话内定期重复(vs /schedule 的区别对比);Routines 访问权限配置(GitHub/Slack/数据库);以及 Routines + ultrareview/Hooks/Subagents 的组合用法。2026/5/8教程Claude Code Sub-agents 官方完整指南:内置 Agent、自定义配置、并行模式和 Fork 会话Claude Code Sub-agents 官方文档完整整理:解决的核心问题(保护上下文/成本控制);三个内置 Sub-agent(Explore/Plan/General-purpose 及各自模型和工具);/agents 创建流程(界面/描述生成/工具选择/持久内存配置);完整 Frontmatter 字段参考;模型选择策略(Haiku 探索→Sonnet 审查→Opus 复杂任务);MCP 服务器限定到 Sub-agent;自动委托 vs 显式调用;前台/后台运行;隔离高容量/并行调研/链式 Sub-agent 三种模式;Fork 会话(与命名 Sub-agent 的区别);以及 4 个官方示例配置。2026/5/8