通常,当我在vim中完成提交消息的编写时,我键入:Wq<ENTER>
而不是:wq<ENTER>
,因为我按住shift键键入冒号。这导致vim响应E492: Not an editor command: Wq
。
这一切都很好,到目前为止,我只是重新键入:wq<ENTER>
保存提交消息并退出VIM。但是,提交不起作用,终端显示如下:
$ git commit
$ error: There was a problem with the editor 'vi'.
$ Please supply the message using either -m or -F option.
为什么在执行正确的
:Wq<ENTER>
之前意外输入:wq<ENTER>
会导致提交失败?输入:Wq<ENTER>
后是否有方法使提交发生? 最佳答案
This article似乎描述了一个类似的问题。
当您使用大写字母“w”时,当git调用vim时,它将以错误代码退出。
你试过了吗:
git config --global core.editor /usr/bin/vim
(或者在系统上安装vim的任何地方)…这似乎解决了问题。必须与git如何调用vim相关。
另外,请参见this question这表明它可能与
filetype
设置有关。