Git commit message on linux terminal


I am trying to learn how to write a git commit message on a linux terminal.

I am presented with the following options after I write my commit message.

Which is the first one I am supposed to choose?

> ^G Get Help  ^O Write Out ^W Where Is  ^K Cut Text  ^J Justify   ^C Cur Pos
^X Exit      ^R Read File ^\ Replace   ^U Uncut Text^T To Spell  ^_ Go To Line

If I hit “write out” I get another list of options that I don’t understand.

File Name to Write:$T_EDITMSG                                                   
^G Get Help     M-D DOS Format  M-A Append      M-B Backup File
^C Cancel       M-M Mac Format  M-P Prepend     ^T To Files


It’s because git pick up nano as its default terminal editor, if you are not familiar with nano, you can config git to use another one.

The easiest way to write a git commit message in terminal is to use the -m option:

> git commit -m "your commit message"

But if you don’t specify the -m option, git will bring you to an editor depends on the following rules

  • Git config option core.editor, local config goes first, then the global.

    • Local: git config core.editor vim, config resides in file $YOUR_REPO/.git/config
    • Global: git config –global core.editor vim, config resides in file $HOME/.gitconfig

    Please refer to Git Configuration for details.

  • Environment variables $EDITOR or $VISUAL

    • export EDITOR=`which vim`
    • export VSUAL=`which emacs`

    This is also the settings used by other tools when it needs an editor.

Answered By – shizhz

This Answer collected from stackoverflow, is licensed under cc by-sa 2.5 , cc by-sa 3.0 and cc by-sa 4.0

Leave a Reply

(*) Required, Your email will not be published