当我运行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"