First off, I totally support @matkelly's answer: You don't need any plugin for using SVN from within VIM.
As an avid vim user I would like to give some pointers on using vim as an IDE along with subversion integration.I have few snapshots I just took of my vim screen so you have a visual.
I come from an eclipse background. Though now I mostly code on VIM on my Fedora workstation. I still use eclipse for certain tasks which its good at, such as Mylyn/Tasktop integration (through Planning Perspective) which integrates with subversion and bugzilla to help me write task-specific commit messages.
In VIM, to interact with SVN painlessly (and general shell tasks for that matter) you need to know few shortcuts:
I get the logs for the file I'm currently working on with:
:!svn log -l3 %
'%' is a special shortcut which gets replaced with the current file path.Above command lists the last 3 log message for this current file.
Guess what this command does?
:!svn diff %
'%:h' gives you the directory currently file is in:
:!svn status %:h
While I'm on the subject, here are few pointers for new vim users who want to make a switch from a GUI-IDE to vim and have hard time navigating through thousands of project files:
I recommend the NERDTree plugin, which opens up an IDE-like directory tree and locates your current file in the tree. It's only useful to me in rare occasions (to delete, copy, move files or to set my current working directory). But if all I want were to locate a specific file from among hundreds of files in my project, I just type:
:find Inventory.pm
Cool thing is, I can type filename partially and hit [TAB], which expands the file name for me!!! If there are several matches it simply iterates through the list until I find the one I meant.
This is the first command my coding session starts with; I CD to my project root folder (since vim's 'path' setting is set to '.'), fire up VIM and type :find Filename
. No GUI IDE that I've used could pull this off this fast. Then, if I wanted to browse my project folder, I just hit F10, which maps to NERDTreeFind, and use jklm VIM commands to navigate the directory structure.
When I have several buffers (files) open in VIM, to navigate open buffers easily I use "Buffer Explorer".
When I'm typing a method or some keyword in VIM i type "CTRL-N", which opens up tag list (I have exuberant ctags setup through cron).
"Tag List" plugin is also a must, which opens up list of functions/methods in the current buffer, locates the method you're currently on, and focuses on it.

