Git 提交打开两个编辑器窗格,而不是一个用于输入消息的窗格



当我运行git commit时,它会打开 2 个 vi 编辑器窗格而不是一个。顶部窗格完全空白。底部窗格是我希望在运行git commit时看到的窗格。每次我想提交时,我都必须使用 :q 关闭顶部窗格,然后才能编写提交消息。

以前有人见过这样的东西吗?解决方案是什么?

我不知道为什么这有效,但我在我的 .vimrc 中注释掉了一行,它改变了配色方案。 colorscheme solarized .似乎以某种方式解决了问题。我猜 git 提交想要使用没有自定义的 vi,并且出于某种原因在存在不同的配色方案时打开一个辅助窗格。


更新:

通过将 colorscheme solarized 行放在我的 .vimrc 中的 if 块中以查看它是否被 git commit 调用来修复。

更改了 .vimrc:

if $_ != 'git commit' 
colorscheme solarized 
endif

我相信问题是 Git 不知道你想使用什么编辑器,所以它默认运行vi,它会在兼容模式下启动 Vim。

其他应用程序也可能发生这种情况,因此您可以在~/.bashrc中设置 VISUAL 和/或EDITOR环境变量(或/以及特定于 git 的GIT_EDITOR)来解决此问题:

EDITOR=vim
VISUAL=vim

或者,你可以将 git 本身配置为使用 vim:

git config --global core.editor "vim"

相关内容

最新更新