neogit
Neogit 是一个为 Neovim 设计的 Git 界面,灵感来源于 Magit。它提供了一个强大的、可定制的 Git 操作界面,适合在 Neovim 中高效地进行版本控制。
- Git 界面集成:在 Neovim 中提供类似 Magit 的 Git 操作界面。
- 支持多种弹窗操作:包括分支管理、提交、合并、拉取、推送、重置、标签、补丁等。
- 可视化 Git 提交历史:支持 ASCII、Unicode、Kitty 风格的提交图。
- 自定义配置:提供大量配置选项,包括界面样式、快捷键、提交编辑器行为等。
- 插件集成:支持与 Telescope、FZF、Diffview 等插件集成。
- 自动刷新:自动监控
.git/目录变化并刷新状态。 - 事件支持:支持 Git 操作的事件回调,方便插件扩展。
- 安装:使用 Lazy 等插件管理器安装。
- 命令使用:
:Neogit打开 Git 界面。:Neogit commit直接打开提交界面。- 支持
tab、split、floating等方式打开界面。
- 快捷键映射:可自定义快捷键,如
<leader>gg打开 Git 界面。 - Lua API:支持通过 Lua 脚本控制 Neogit 的打开方式和参数。
- 弹窗操作:支持多种 Git 操作弹窗(如 Commit、Branch、Rebase、Merge、Pull、Push 等)。
- 提交编辑器:支持在编辑器中编写提交信息,并显示已暂存的更改。
- Git 服务集成:支持 GitHub、GitLab、Bitbucket 等平台的 URL 生成。
- 高亮样式:支持自定义高亮样式(斜体、粗体、下划线等)。
- 多窗口支持:支持多种窗口布局,如分割、浮动窗口。
- 自动刷新与监听:自动监听 Git 状态变化,保持界面更新。
- 快捷键映射:提供丰富的快捷键,支持自定义。
- 兼容性好:兼容 Neovim 0.10+,并持续更新以适配最新版本。
适用于使用 Neovim 并希望通过命令行方式高效管理 Git 的开发者。尤其适合对 Magit 有一定使用经验的用户。