337

I am using Windows and before committing, Git wants me to enter a text message and a new text window appears.

screenshot

How can I exit from this?

I am trying to learn Git. So, a little help will be highly appreciated.

2
  • 1
    possible duplicate of Git commit asking for comment Commented Feb 7, 2012 at 5:27
  • 5 years on, and with this being a famous question, would you like to accept an answer? Commented Dec 19, 2017 at 3:49

7 Answers 7

321

Since you are learning Git, know that this has little to do with git but with the text editor configured for use. In vim, you can press i to start entering text and save by pressing esc and :wq and enter, this will commit with the message you typed. In your current state, to just come out without committing, you can do :q instead of the :wq as mentioned above.

Alternatively, you can just do git commit -m '<message>' instead of having git open the editor to type the message.

Note that you can also change the editor and use something you are comfortable with ( like notepad) - How can I set up an editor to work with Git on Windows?

Sign up to request clarification or add additional context in comments.

1 Comment

I recommend setting the editor to your favorite editor. Then use the command line version (git commit -m '...') when it fits, or let it launch your editor (TextMate, Notepad, whatever) when it doesn't
84

There is a default text editor that will be used when Git needs you to type in a message. By default, Git uses your system’s default editor, which is generally Vi or Vim. In your case, it is Vim that Git has chosen. See How do I make Git use the editor of my choice for commits? for details of how to choose another editor. Meanwhile...

You'll want to enter a message before you leave Vim:

O

...will start a new line for you to type in.

To exit (g)Vim type:

EscZZ or Esc:wqReturn.

It's worth getting to know Vim, as you can use it for editing text on almost any platform. I recommend the Vim Tutor, I used it many years ago and have never looked back (barely a day goes by when I don't use Vim).

4 Comments

It's hard to see whether the 'O' is upper or lower case. A lower case 'o' causes the message to be written on the second row.
I guess it depends on your font. Hopefully the document to which it's hyperlinked will help disambiguate.
It's worth getting to know vim so you can quit it from a wide variety of applications that default to it.
In Inteliji Idea if you set Git as Terminal Escape just changes focus to code editor from Terminal, so the commits are still in edition mode, useless
65

That's the vi editor. Try ESC :q!.

3 Comments

Actually, it's Vim (see the title bar).
it worked all the time, by now it's always being in INSERT mode, I press ESC but nothing changes! it's still edits commits
it doesn't work if you added it as terminal for IntelliJ Idea. sometimes CTRL + ESC works but sometimes it closes fully the vim and you have to abort rebase because it failed to continue
17

On Windows 10 this worked for me for VIM and VI using git bash

"Esc" + ":wq!" 

or

"Esc" + ":q!" 

Comments

14

On windows I used the following command

:wq 

and it aborts the previous commit because of the empty commit message

2 Comments

press The better the key Esc before
you can just start typing it until you exit somehow editing mode, it's very intuitive with IntelliJ Idea when using git as terminal
10

First type

 i 

to enter the commit message then press ESC then type

 :wq 

to save the commit message and to quit. Or type

 :q! 

to quit without saving the message.

Comments

0

On windows, simply pressing 'q' on the keyboard quits this screen. I got it when I was reading help using '!help' or simply 'help' and 'enter', from the DOS prompt.

Happy Coding :-)

Comments

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.