15

在转到 VIM 之前,我使用 Aptana Studio 玩了一段时间,而我真正想念 Aptana Studio 的唯一一件事是,在他们的项目视图窗口中,您的文件名根据它们在 git 中的状态显示不同的颜色(未更改,已更改但未上演、上演、未跟踪)。我知道我可以直接到终端查找,但是在我的编辑器中无需输入任何命令就可以找到它真的很有帮助。

有谁知道 vim 是否存在具有此功能的插件?无论是 NERDTree 的插件、替代品还是其他什么?

4

4 回答 4

10

为了将来参考,我创建了一个 NERDTree 的分支,可以在https://github.com/SeySayux/NerdTreeGit找到它。

请注意,它仍在开发中,因此可能会中断。它还包含一些还没有可配置选项的怪事。

更新:上面链接的项目已停止。对于(更好的)替代方案,试试这个:https ://github.com/Xuyuanp/nerdtree-git-plugin

于 2012-10-29T11:49:30.127 回答
9

你看过fugitive.vim吗?在基于 git status 对 NERDTree 进行颜色编码方面,它并不完全符合您的要求——我不知道有任何 Vim 插件可以做到这一点,尽管它会很棒。它确实充当了一个非常棒的小 Git 包装器,并允许您在拆分窗口中快速查看项目的状态:Gstatus。无需前往航站楼。你甚至可以将当前文件的分支指示器添加到 Vim 的状态行。

您可以在 fugitive.vim 上观看由五部分组成的截屏视频中的第一部分

于 2011-06-23T18:20:00.927 回答
4

我使用了git.vim插件,它提供了几个 git 功能,比如 add/commit/diff/log 等。所以从 vim 中,我映射<Leader>gsGitStatus,它打开一个新的视口并整齐地显示状态:

在此处输入图像描述

但我最喜欢这个插件的GitBranch()功能是可以将当前分支添加到状态行的功能,正如我在我之前的回答中所概述的那样

同样,应该可以编写一个函数来调用GitStatus和 grep 输出并报告 repo 中是否存在暂存更改或未暂存更改,然后可以方便地将其添加到状态行。

于 2011-06-23T18:38:40.313 回答
2

我猜你会喜欢这个https://github.com/Xuyuanp/git-nerdtree

这是我的分叉 NERDTree。

为NERDTree添加git状态支持。您可以指示文件的git状态,快速查看您在项目中已暂存、未暂存和修改或删除的文件,无需任何额外工作。

指标

  • ✭ : 未追踪
  • ✹:在工作树中修改
  • ✚:暂存于索引中(排除重命名状态)
  • ➜ : 重命名
  • ═ : 未合并
  • ✖ : 已删除(此指标无法显示,因为 NERDTree 不显示已删除的文件。我目前没有完美的想法来解决这个问题。)
  • ✗:脏(仅用于目录)
  • ✔︎:干净(仅用于目录)

键映射

GitGutter插件默认相同。

  • ]c: 跳到下一个指标
  • [c: 跳转到上一个指示器
于 2014-04-09T06:28:14.077 回答