如何全局配置git以使用特定的编辑器(例如vim)提交消息?


当前回答

对于希望使用Kinetics文本编辑器的Windows用户

创建一个名为“k.sh”的文件,添加以下文本并放置在主目录(~)中:

winpty "C:\Program Files (x86)\Kinesics Text Editor\x64\k.exe" $1

在git提示符下键入:

git config --global core.editor ~/k.sh

其他回答

只需尝试EDITOR=vim-gitcommit。

或者可以通过在bashrc中导出EDITOR=vim将EDITOR设置为vim。

Atom作为您的git编辑器

git config --global core.editor "atom --wait"

需要将Atom配置为从命令行运行,以使上述功能正常工作:OS X:从Atom安装shell命令:菜单栏>Atom>安装Shell命令Windows:不需要任何操作-默认情况下,atom配置为从命令行运行

对于emacs用户

.emacs:

(server-start)

外壳:

export EDITOR=emacsclient

设置Git的默认编辑器

选择一个:

在Git配置中设置core.editor:git-config—全局core.editor“vim”设置GIT_EDITOR环境变量:导出GIT_EDITOR=vim


设置所有程序的默认编辑器

设置标准化的VISUAL和EDITOR环境变量*:

export VISUAL=vim
export EDITOR="$VISUAL"

注意:不一定需要同时设置这两个,但某些程序可能不会使用更正确的VISUAL。参见视觉与编辑。


修复兼容性问题

有些编辑器需要--wait标志,否则将打开空白页。例如:

Sublime文本(如果设置正确;或使用可执行文件的完整路径代替subl):export VISUAL=“subl--等待”VS代码(添加shell命令后):export VISUAL=“code--wait”

在windows 7中,当添加“Sublime”编辑器时,它仍然给我一个错误:

由于提交消息为空,正在中止提交。

Sublime无法保持焦点。

为了解决这个问题,我打开了c:\users/username/文件夹中的.gitconfig文件,并在单引号外添加了下面一行--wait选项。

[core]
      editor = 'F:/Program Files/Sublime Text 2/sublime_text.exe' --wait

希望对Sublime面临类似问题的人有所帮助。