If you want to set the editor only for Git, do either (you don’t need both):
- Set core.editor in your Git config: git config --global core.editor "vim"
- Set the GIT_EDITOR environment variable: export GIT_EDITOR=vim
If you want to set the editor for Git and also other programs, set the standardized VISUAL and EDITOR environment variables*:
export VISUAL=vim
export EDITOR="$VISUAL"
* Setting both is not necessarily needed, but some programs may not use the more-correct VISUAL.
For Sublime Text: Add this to the .gitconfig. The --wait is important (it allows to type text in sublime and will wait for save/close event.)
[core]
editor = 'subl' --wait
'subl' can be replaced by the full path of the executable but is usually available when correctly installed.