通常,当我在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设置有关。

08-27 18:19