I normally use git on the command line.
But when there is a merge conflict I use Vim to resolve them with (personally I do it with with the fugitive plugin). Note: fugitive is good for a lot of git manipulation from within Vim. My favorite feature is the 3 way diff of a merge conflict.
git supports this in vimdiff via git mergetool. I have installed ...
You can do this with the vim-gitgutter plugin. If you're not using git, then Signify has a similar feature.
After installing vim-gitgutter, you can switch the highlighting on and off with the following commands:
turn on with :GitGutterLineHighlightsEnable
turn off with :GitGutterLineHighlightsDisable
toggle with :GitGutterLineHighlightsToggle.
Or, to ...
Depending on how you update your ./tags file:
If you do not commit your ./tags file to your branch/repository you can use a git hook that calls ctags -R . on each pull/checkout you do - this way your ./tags file will always contain data on all present files in the current version you have checked out.
If you do want to commit your ./tags file, you can ...
Here is how I solved the problem, by adding to my .vimrc:
autocmd FileType gitcommit set nosmartindent | set formatoptions-=t
This removes the option that causes the lines to auto-wrap (which is another tweak I also made -- take out the last part including the | if you do not want to change this).
The take-away here is that nosmartindent is the trick to ...