≡ Menu

Vi / Vim: Wipe and Undo All Changes Since Opening a File

I am a new vi / vim text editor user and I know how to quit without saving changes. What if I want to wipe out all of the edits I have made in a session and get back to the original file? How do I wipe all changes since opening a file?

To undo and wipe all changes since opening file in vim or vi text editor.

1) If you are currently in insert or append mode, press Esc key.

2) Type : (colon). You will see the cursor at the lower left corner of the screen.

3) Type the following command:




The above command returns you to the last saved version of the file i.e. edit the current file always. Discard any changes to the current buffer. This is useful if you want to start all over again. Type the following command for more information.

:help edit!

Check out related media

This tutorial is also available in a quick video format:

Video 01: VI / VIM: Wipe All Changes To The Buffer / File

Share this tutorial on:

Like this? Follow us on Twitter OR support us by using Patreon

{ 3 comments… add one }
  • w0m April 29, 2013, 4:59 am

    I use this daily. Though to be safe; I do a diff of current buffer and file saved on disk before reverting.
    0 set diffopt+=iwhite
    1 function! DiffOrig()
    2 if &diff
    3 wincmd p | bdel | diffoff
    4 else
    5 vert new | set bt=nofile | r # | 0d_ | diffthis | wincmd p | diffthis
    6 endif
    7 endfunction
    8 map do :call DiffOrig()

  • Deepak April 29, 2013, 10:58 am

    easiest way is, type escape and then “u” to undo the changes one by one.

  • Sergey April 4, 2016, 4:06 pm

    Deepak, good solution!

Security: Are you a robot or human?

Leave a Comment

You can use these HTML tags and attributes: <strong> <em> <pre> <code> <a href="" title="">

   Tagged with: , , , , , , , , , ,