Use vimdiff to replace entire file?

You should take a look at Tim Pope's Fugitive plugin. It's a really usefull plugin.

When you run Gdiff in a conflicted file, 3 files are opened - target, merged and working copy. You would switch to the file you want to save, and execute Gwrite! to save that file.

There is a whole Vimcast explaining how to resolve merge conflicts with this plugin(And other 5 vimcasts explaining more about Fugitive.vim).


Several ways:

:%diffput

to do 'put' all changes from the current buffer to the 'other' buffer. This makes it easy with three-way diffs:

:%diffput OURS

The 'OURS' pattern will match uniquely on buffernames participating in the current diff

All the above can be done in reverse, substituting do or :diffget