我如何为 Neovim 构建了一个 Git Log Diff 工作流插件

发布: (2026年1月19日 GMT+8 18:03)
2 min read
原文: Dev.to

Source: Dev.to

Overview

当我不久前彻底转向 Neovim 时,我发现缺少 JetBrains IDE(如 RubyMine)提供的 Git 集成功能——尤其是我每天用来检查最近提交和差异的 Git 日志视图。在 RubyMine 中,我常常会问:“最近三次提交有什么变化?”并立即得到交互式的历史视图。

Neovim 并没有内置这种 UI。虽然已有许多 Git 插件(例如用于行内标记的 gitsigns.nvim 或提供完整界面的 Neogit),但它们都没有提供我想要的工作流:一个紧凑的“挑选提交,然后比较差异”的体验。

于是我创建了 gitlogdiff.nvim,一个小巧的 Neovim 插件,用于列出最近的 Git 提交并快速查看它们的差异。

Features

  • 简洁的提交列表 – 通过 git log 获取,展示你的近期历史。
  • 轻松的导航 – 使用 j/k 在列表中移动并选择提交。
  • 即时差异视图 – 按 “ 打开一个差异视图(通过 diffview.nvim),比较所选提交。

Usage

工作流与 JetBrains 的 Git 日志浏览器类似,但全部在 Neovim 中完成:

  1. 打开插件的提交列表。
  2. 使用 j/k 导航。
  3. 在某个提交上按 “,即可侧边并排查看它与前一次提交的差异。

Contributing

插件已托管在 GitHub —— 这里。欢迎提交 issue、分享想法或提交 pull request!插件设计保持轻量同时具备可扩展性。

Future Plans

我希望在未来的版本中加入对 diffview.nvim 之外的其他差异查看器的支持。

Happy vim‑ing! 🧑‍💻

Back to Blog

相关文章

阅读更多 »

什么是 git?

为什么你需要 Git 对于许多开发者来说,U 盘只是一个存放和检索旧项目或文件的地方。但当你拥有太多文件夹、冗余文件……

测试 MFA,无需频繁拿起手机

问题:当我在开发身份验证功能时,测试 MFA 几乎总是会打断流程。解锁手机。打开 Authenticator。滚动浏览测试账户。Rac...