变更面板
点击输入框上方的文件修改按钮展开面板:
- 范围切换:
当前轮次只看本轮改动,全部修改列出本次对话以来的所有改动。 - 状态分类:每个文件标注
Modified、Added、Deleted或Renamed。 - 自动弹出:默认在产生文件修改时自动打开面板。「设置 → 显示」的
面板行为中可关闭自动打开,或开启发送新消息时自动关闭。
查看差异
- 内嵌查看:点击文件或在文件的
文件操作菜单中选择查看差异,在当前窗口查看改动前后的对比。 - 独立窗口:选择
独立窗口把差异审查开到单独的窗口中,适合双屏或长差异。默认打开位置可在「设置 → 显示」的文件修改审查中指定。
撤回
单文件撤回
在变更面板中打开某个文件的文件操作菜单,选择撤回此文件,将该文件恢复到本轮修改前的状态。其他文件和对话记录保持不变。
整轮撤回
- 变更面板:
当前轮次模式下点击撤销本轮修改,全部修改模式下点击撤销全部修改。整轮撤销会同时回退对应的对话记录。 /undo命令:弹出撤回一轮对话对话框,提供两种模式:仅撤回会话:只回退对话记录,磁盘上的文件保持现状。适合文件改动想保留、但希望对话回到上一轮重新指挥的情况。撤回文件 + 会话:文件与对话一并回退。
撤回到这条消息可直接回退到任意历史消息处,见会话页面。
脏写警告
撤回点之后文件又被改过时,Locus 会先提示再执行:- 本会话的后续修改:提示
该轮结束后这些文件又有新的修改,撤销时会一并回退,并列出受影响的文件。确认后这些额外修改会随撤销一起消失。 - 其他会话的修改:本次撤销会覆盖其他会话里更新的文件时,需要先检查列出的冲突文件,再决定是否点击
强制撤销。 - 单文件撤回:同样有对应提示,确认按钮为
仍要撤回。
原理:基于 Git 快照
Locus 依赖版本管理实现「撤销」与「变更分析」:每轮开始前记录文件快照,撤回即把文件恢复到对应快照。因此撤回能力要求项目已完成 Git 配置,Locus 使用的 Git 版本可在「设置 → 通用」的Git 运行时中选择。撤回只作用于 Agent 会话记录的改动范围;跨会话、跨提交的版本操作请使用「协作」页面,见协作与提交。