我一直在使用像NetBeans这样的IDE。 NetBeans有一个很好的版本控制插件。当我有多个项目并同时处理它们时,我可以选择特定的项目来实现它们并让其他人离开。此外,提交框允许我轻松地删除不需要的文件以进行提交。我没能找到Vim的等效插件。
我用过Nerdtree;虽然它有利于项目导航,但它并没有显示我修改了哪些文件夹/文件。在Netbeans中,它会在受影响的树路径旁边显示一个蓝色/绿色图标。
我还喜欢GUI中的其他功能,但我不会在这里列出所有功能。
我真的想切换到Vim,但这阻止了我。有人可以为Vim建议一个类似的插件吗?
更新:由于这是3年前提出的,我已经停止使用颠覆并开始使用GIT,我与vim使用的plugins有Git支持(逃犯)
答案 0 :(得分:7)
只需使用适当的shell命令(svn commit,svn update等)。为vim创建一个SVN插件真的没有意义。您甚至可以在vim中运行shell命令。例如:
:! svn update
虽然我不确定在SVN的情况下这会带来什么显着优势。
如果我想“欺骗”并查看图形目录结构,有时我会在Eclipse中打开Subclipse - 但绝对没有必要。
要开始使用vim,只需在安装了vim的计算机上打开终端并执行:
vimtutor
你马上就会开始运作。
答案 1 :(得分:5)
有一些用于颠覆的vim插件,尽管它们都没有为您提供您想要的完全类似IDE的集成。使用git可以做得更多,因为它本身就更灵活,而且,如果你很好奇,那么fugutive就是一个非常漂亮的插件:http://vimcasts.org/blog/2011/05/the-fugitive-series/
但是,到了这一点。以下是一些可能有助于您的特定请求的插件,以及一些更常见的插件:
Sandbox
命令并按照说明进行操作。但该脚本确实说“仅限Linux”。你没有提到你正在使用的操作系统,所以如果你在Windows上,我不知道它是否能正常工作。同样,你可能不会得到你想要的整合。 Vim非常灵活,但某些IDE功能很难在其中运行。我可以看到一个可能的解决方案,但需要一段时间才能正确编写和测试。我很抱歉,但你必须要么适应使用命令行客户端,比如@mattkelly建议,要么考虑使用外部程序来处理提交,遵循@romainl的建议。
答案 2 :(得分:3)
我推荐VCSCommand。它具有开箱即用的方便映射,并且可以与svn,git和hg一起使用。但是,它本身并没有真正的“GUI”;我认为你不会发现许多面向vim的资源。
答案 3 :(得分:2)
首先,我完全支持@matkelly的回答:你不需要任何插件来在VIM中使用SVN。
作为一个狂热的vim用户,我想提供一些关于使用vim作为IDE以及subversion集成的一些指示。我刚刚使用vim屏幕拍摄的快照很少,所以你有一个视觉效果。
我来自日食背景。虽然现在我主要在我的Fedora工作站上编写VIM代码。我仍然使用eclipse处理其擅长的某些任务,例如Mylyn / Tasktop集成(通过Planning Perspective),它与subversion和bugzilla集成,以帮助我编写特定于任务的提交消息。
在VIM中,要轻松地与SVN进行交互(以及一般的shell任务),你需要知道一些快捷方式:
我得到了我正在处理的文件的日志:
:!svn log -l3 %
'%'是一个特殊的快捷方式,它被当前文件路径替换.Above命令列出当前文件的最后3条日志消息。
猜猜这个命令是做什么的?
:!svn diff %
'%:h'为您提供当前文件所在的目录:
:!svn status %:h
虽然我是关于这个主题的,但是对于想要从GUI-IDE切换到vim并且很难浏览数千个项目文件的新vim用户来说,这里有一些指示:
我推荐NERDTree插件,它打开一个类似IDE的目录树,并在树中找到当前文件。它仅在极少数情况下对我有用(删除,复制,移动文件或设置我当前的工作目录)。但如果我想要的是从我的项目中的数百个文件中找到特定文件,我只需输入:
:find Inventory.pm
很酷的是,我可以部分输入文件名并点击[TAB],这会为我扩展文件名!如果有多个匹配,它只是遍历列表,直到找到我想要的那个。
这是我的编码会话开始的第一个命令;我CD到我的项目根文件夹(因为vim的'path'设置设置为'。'),启动VIM并输入:find Filename
。我没有使用过的GUI IDE可以快速解决这个问题。然后,如果我想浏览我的项目文件夹,我只需点击F10,它映射到NERDTreeFind,并使用jklm VIM命令来导航目录结构。
当我在VIM中打开多个缓冲区(文件)时,为了轻松导航打开的缓冲区,我使用“Buffer Explorer”。
当我在VIM中键入方法或某个关键字时,我键入“CTRL-N”,这会打开标记列表(我通过cron设置了丰富的ctags)。
“标签列表”插件也是必须的,它打开当前缓冲区中的函数/方法列表,找到您当前使用的方法,并专注于它。
答案 4 :(得分:1)
您可以尝试使用GitHub中的插件https://github.com/juneedahamed/svnj.vim
答案 5 :(得分:0)