I'd advise putting your vim directory (or ALL of your dotfiles) under version control. To keep things clean, the first thing you should do is install Tim Pope's pathogen plugin which allows you to install each plugin in its own self-contained directory under ~/.vim/bundle/plugin-name/, and it will autoload everything for you.
Then, you can just extract each plugin under that bundle directory, or if they're managed by the same version control software you're using, you can use something like git submodules to track the plugins automatically. Add this to the top of your ~/.vimrc file:
filetype off
call pathogen#runtime_append_all_bundles()
filetype plugin indent on
...and you're off to the races. Let's say you want to add NERD_tree:
$ git submodule add http://github.com/scrooloose/nerdtree.git bundle/nerdtree
$ git submodule init
$ git commit -m 'add nerd tree plugin as submodule'
From then on, you'll be able to track upstream changes to the plugin, and everything is self-contained so you don't have to worry about copying all the files into /doc, /ftplugin, /syntax, etc. The one thing you'll want to do is generate all of the help docs after you have your plugins installed by loading up vim and running:
:call pathogen#helptags()
The list of what I use goes a little something like this:
@ pathogen - to cleanly organize all of your plugins
@ bufexplorer - to explore your open buffers
@ command-t - a better fuzzy finder for opening files
@ endwise - add proper end statements for ruby code
@ fugitive - fantastic git wrapper
@ matchit - jump to matching brackets or logical statements
@ nerdtree - navigate and manipulate files
@ pastie - post code to pastie.org
@ repeat - adds the ability to repeat functions with .
@ surround - alter stuff that surrounds text like quotes and html tags
@ taglist - helpful source code browser
Beyond that, I have a bunch of syntax files for various languages and file formats.
Realistically though, if you're just starting out. Learn how to use the editor first, then if you notice certain use cases that you don't have with built-in features (and there are a TON), then start looking for plugins to make your life easier. There's a lot you can do with custom settings and functions in your ~/.vimrc file too, so it will take time (years) to build up what works best for you. Be patient, it's worth it!
@ pathogen - to cleanly organize all of your plugins
@ bufexplorer - to explore your open buffers
@ command-t - a better fuzzy finder for opening files
@ endwise - add proper end statements for ruby code
@ fugitive - fantastic git wrapper
@ matchit - jump to matching brackets or logical statements
@ nerdtree - navigate and manipulate files
@ pastie - post code to pastie.org
@ repeat - adds the ability to repeat functions with .
@ speeddating - Ctrl-A/Ctrl-X manipulate dates properly
@ surround - alter stuff that surrounds text like quotes and html tags
@ taglist - helpful source code browser
Beyond that, I have a bunch of syntax files for various languages and file formats.
Realistically though, if you're just starting out. Learn how to use the editor first, then if you notice certain use cases that you don't have with built-in features (and there are a TON), then start looking for plugins to make your life easier. There's a lot you can do with custom settings and functions in your ~/.vimrc file too, so it will take time (years) to build up what works best for you. Be patient, it's worth it!
If you're curious, you can always find gems by looking through other people's configs: http://github.com/elasticdog/dotfiles