检查点与撤销
在 AI 执行文件修改操作前,AiCode 会自动保存改动前的文件快照并创建检查点。如果生成结果未达预期或引入了意外问题,可随时一键回退到指定节点。该机制完全自动运行,无需手动干预。
回滚方式
在聊天记录里找到你想退回的那条你自己发的消息,其左侧有一个撤销图标,点开即该检查点的操作菜单。
菜单里有三个选择:
| 操作 | 代码 | 对话 |
|---|---|---|
| 恢复代码与对话 | 回到这条消息之前的状态 | 删掉这条之后的消息,原来的提问会填回输入框 |
| 仅恢复对话 | 保持现状不变 | 删掉这条之后的消息 |
| 仅恢复代码 | 回到这条消息之前的状态 | 保持完整不变 |
常用的是第一个:相当于「这一轮重来」,代码和对话一起回到起点,你可以修改提问后再发一次。
恢复对话会删除所选消息及后续消息,撤销现有压缩摘要,并恢复回退点之前保留的原始对话,避免摘要带入后续事实。「仅恢复代码」不改变对话。恢复后历史过长时,下一次发送前会重新压缩;已经发生的调用用量不会清零。旧版已经截断或缺失的内容无法凭回退补回。
如果只是想让 AI 忘掉走偏的几轮讨论、但保留它已经写好的代码,用「仅恢复对话」。反之,代码想丢弃、讨论过程想留着复盘,用「仅恢复代码」。
适用边界与限制
检查点只记录 AI 通过文件工具做的修改。如果文件是被终端里的命令改掉或删掉的(rm、mv、sed 这类,无论是你自己输入的还是 AI 执行的),检查点无法精确还原。
这种情况下建议通过 Git 恢复:只要文件曾被 Git 跟踪过(提交过一次即可),去 Git 页的状态标签页长按该文件,选「恢复文件」或「回退改动」即可取回,与它是怎么被删的无关。反之,从没提交过的新文件不在这层保护里。
重要的项目建议同时用 Git 管理,检查点适合处理单轮改动的回退,Git 才是完整的版本安全网。