检查点
Gemini CLI 包含一个检查点功能,它可以在 AI 动力工具进行任何文件修改之前自动保存项目状态的快照。这使得您可以安全地实验并应用代码更改,知道您可以立即恢复到运行工具之前的状态。
当您批准一个修改文件系统的工具(如 write_file 或 replace)时,CLI 会自动创建一个“检查点”。这个检查点包括:
- Git 快照: 在您的主目录中一个特殊的、隐藏的 Git 仓库中创建一个提交(
~/.gemini/history/<project_hash>)。这个快照捕获了那一刻项目文件的完整状态。它不会干扰您自己的项目 Git 仓库。 - 对话历史: 您与代理人的整个对话历史会被保存。
- 工具调用: 即将执行的特定工具调用也会被存储。
如果您想撤销更改或只是返回,可以使用 /restore 命令。恢复检查点将会:
- 将您的项目中所有文件恢复到快照中捕获的状态。
- 在 CLI 中恢复对话历史。
- 再次提议原始工具调用,允许您再次运行它、修改它,或者简单地忽略它。
所有检查点数据,包括 Git 快照和对话历史,都存储在您的本地机器上。Git 快照存储在隐藏的仓库中,而对话历史和工具调用保存在项目临时目录中的一个 JSON 文件中,通常位于 ~/.gemini/tmp/<project_hash>/checkpoints。
检查点功能默认是禁用的。要启用它,您需要编辑您的 settings.json 文件。
注意: 在版本 0.11.0 中移除了
--checkpointing命令行标志。现在只能通过settings.json配置文件来启用检查点功能。
将以下键添加到您的 settings.json 中:
{ "general": { "checkpointing": { "enabled": true } }}使用 /restore 命令
Section titled “使用 /restore 命令”启用后,检查点会自动创建。要管理它们,请使用 /restore 命令。
列出可用的检查点
Section titled “列出可用的检查点”要查看当前项目的所有已保存检查点列表,只需运行:
/restore命令行界面将显示可用的检查点文件列表。这些文件名通常由时间戳、被修改的文件名以及即将运行的工具名称组成(例如,2025-06-22T10-00-00_000Z-my-file.txt-write_file)。
恢复特定的检查点
Section titled “恢复特定的检查点”要将项目恢复到特定的检查点,请使用列表中的检查点文件:
/restore <checkpoint_file>例如:
/restore 2025-06-22T10-00-00_000Z-my-file.txt-write_file运行命令后,您的文件和对话将立即恢复到创建检查点时的状态,原始工具提示将重新出现。