You should switch off diff mode for the unwanted buffer with :diffoff
before quitting it with :q
. Depending on your settings (e.g. :set hidden
), the buffer will persist in the buffer list (:ls
), and Vim will consider it when doing a diff.
A :bufdo diffoff
should turn off diff for all existing buffers, though I usually just quit Vim and relaunch it with vimdiff ...
should such a situation arise.