SuperAPI AI 工具集

show-diff

编程与开发

查看项目

更新于 10-16 08:46

技能介绍

用途:打开一个新的 tmux 窗格,通过 diffview.nvim 展示当前改动,使用户能在并排查看器中审阅,而不是翻阅终端输出。

主要能力与使用时机:在做出较多编辑后主动展示改动供审阅;当用户要求查看 diff、打开 diff 查看器或审阅改动时使用;在请求用户批准较大改动提交前使用。若改动很小、不在 tmux 内、或用户本轮已审阅过改动,则跳过。

运行方式:

bash ~/code/seabbs/dotfiles/scripts/show-diff.sh $ARGUMENTS

该脚本会在仓库顶层打开右侧分屏,运行 nvim +DiffviewOpen <range>。

rev-range 选择:

  • 无参数:工作区与 HEAD 比较,用于未提交改动。
  • last:HEAD~1..HEAD,查看最近一次提交。
  • last N 或 N:HEAD~N..HEAD,查看最近 N 次提交。
  • pr:origin/<base>...HEAD(base 取自 gh pr view),用于有开放 PR 的分支。
  • 其他值:原样透传,如显式范围 main...HEAD。

若在具有开放 PR 的功能分支上同时存在已提交和未提交的工作,pr 是最快捷的选择。

要求:必须运行在 tmux 内(否则脚本报错);必须是 git 仓库;neovim 需可用 diffview.nvim(用户 dotfiles 中已配置)。

打开后:告知用户窗格已打开及所示范围。不要试图从 agent 侧驱动该 nvim 实例。