# 检查点

## 概述

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

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


## 常见使用场景

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

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

---

## 限制

### Bash 命令的更改不会被跟踪

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

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

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

### 外部更改不会被跟踪

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

### 不能替代版本控制

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

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

---

## 另请参阅

- **[交互模式](interactive-mode.md)** - 键盘快捷键和会话控制
- **[斜杠命令](slash-commands.md)** - 使用 `/rewind` 访问检查点
