如何在 iflow 中实现撤销/重做,就像在代码中一样?

在 OpenCode 中,输入 /undo 可以撤销代码,输入 /redo 可以重写代码。

iflow里通过/restore来恢复到某次输入内容前的状态(检查点),它依赖git,因此你需要首先安装有git,并且确保检查点功能已打开(在iflow的某次更新中默认关闭了检查点功能),你可以检查你的iflow配置文件,位置在~/.iflow/settings.json,看是否有:

  "checkpointing":{
    "enabled":true
  }

没有的话,添加上面的配置可以开启iflow的检查点功能。
之后在iflow cli中涉及到项目目录中文件的变更操作,会自动记录检查点,可以通过/restore命令来选择回滚到某个检查点上。(注意回滚操作是不可逆的,一旦回滚,此检查点之后的所有改动都不可再恢复了

注意:如果开启了检查点功能,请尽量在项目目录中开启iflow cli,不要在根目录开启,否则容易卡。以及,开启了检查点功能后,项目的变动会自动提交,会占用磁盘空间,请及时清理。

关于检查点功能更多的说明可以查看官方文档:

iflow没有类似/redo的指令,如果你只是回滚了前面一个检查点,可以通过方向键↑,↓来快速调出之前你的prompt,并对内容做出调整后发出,让iflow重做该需求。

执行 /restore 后按 不会有上一条只有上上条,如果撤回几条前的,会把中间发送的指令一起撤销掉 :joy: 之前的版本是这样,不知道新版本还是不是

好吧~那就重打吧,活动下手指~