用于版本控制的vim插件

Eel*_*vex 12 vim dvcs

vcscommand这样的插件适用于(几乎)任何vcs和插件,例如特定于一个vcs的逃犯.

  • 插件的优点/缺点是什么,例如fugitive而不是vcscommand?
  • 你用vim进行版本控制的插件(或其他技巧)是什么?

Jud*_*den 6

我很高兴使用":!"在vim中运行命令行工具 用于版本控制.您还可以编写自己的宏和键绑定来加速重复操作.另外,请考虑将这些操作添加到构建系统(例如Maekfile).但是,我发现更容易记住svn,hg,git等的命令行选项.


zen*_*zen 6

  • 插件的优点/缺点是什么,例如fugitive而不是vcscommand?

简短的回答

VCSCommand适用于许多版本控制系统.如果您的组织中有多个 - 与您合作的所有回购的相同键映射,那就太好了.

逃犯是紧密的 git-to-vim集成.浏览和编辑您的git存储库,索引和本地文件变得无缝.

答案越长

我用两个.我认为他们互相称赞,并且对于任何一个插件都没有任何不好的说法,至少没有一些关键映射无法解决的问题.

VCSCommand是我的研究工具. 我使用它来记录,注释,差异,vimdiff和偶尔提交(由于工作场所的工作流程),它工作得很好.我经常在git和cvs存储库之间切换,并且无论我正在使用什么repo(目录),都喜欢使用相同的映射.

使用缓冲区变量b:VCSCommandVCSType和键映射,我还能够在工作中支持同一目录中的两个存储库.(CVS/git - 不推荐给那些胆小的人,但对于通过一些练习和理智的.gitignore规则来管理本地编辑非常有用.)

Fugitive是一个非常棒的git-in-vim界面. 我说git-in-vim,因为这是我能想到的最好的解释.正如我之前提到的,它模糊了存储库,索引和本地文件之间的界限 - 完全自由.像'Glog'和'Gedit'这样的命令非常直观且非常有用.

如果你喜欢git和vim,请安装逃犯.和病原体.病原体从vim插件管理中解脱出来.做吧.

  • 你用vim进行版本控制的插件(或其他技巧)是什么?

我强烈推荐svndiff. vv.org上的svndiff尽管有它的名字,但它适用于许多VCS(git/svn/CVS).打开修改后的文件并直接跳转到下一个/上一个修改过的(或删除/添加的)部分非常棒.您可以一目了然地看到所有更改(在窗口中可见).你的vim将需要编译的+标志,但它是一个惊人的加速器.

对于git提交浏览,也建议使用Extradite for fugitive.http://int3.github.com/vim-extradite/