提交Git时保存vim文件出现错误

4

我正在按照Nettuts的易学Git指南进行操作。

我在~/目录下初始化了一个空的Git实例,然后添加了我的.vimrc.vim/文件。

git add .vimrc
git add .vim

然而,当我执行git commit命令时,我得到了似乎与此无关的错误消息。

sayth@linux-kt34:~> git commit
Error detected while processing /home/sayth/.vimrc:
line  203:
E319: Sorry, the command is not available in this version: py << EOF
line  204:
E492: Not an editor command: import os.path
line  205:
E492: Not an editor command: import sys
line  206:
E492: Not an editor command: import vim
line  207:
E15: Invalid expression: 'VIRTUAL_ENV' in os.environ:
line  224:
E171: Missing :endif
Press ENTER or type command to continue

如果我按下回车键,我会被带到一个文件中。我在这方面做错了什么?
编辑:已从.vimrc中删除virtualenv引用。因为我一直在使用gvim,所以从未注意到错误。

这个问题与你的/home/sayth/.vimrc有关。请将其粘贴以便我们进行评论。 - ssedano
我的vimrc可能太长了,无法在此粘贴。我已经编辑了上面的内容,将有问题的virtualenv部分从vimrc中删除了。 - sayth
你可以将你的.vimrc文件粘贴到例如https://gist.github.com,并链接它。 - Zsolt Botykai
我的 Vim 配置文件在这里 https://github.com/flebber/MyVim/blob/master/.vimrc,仅供参考。 - sayth
仅供参考,我在一台服务器上遇到了这个问题(从git启动vim时出现错误,但正常情况下没有)。虽然与Python无关,但我收到了有关“无鼠标支持”、“找不到颜色方案”等错误的报告。这是因为(旧的)系统正在运行Vim 7.0,所以我在我的主目录中编译了vim 7.3,并在使用它。另一方面,Git似乎使用系统vim(通过检查“:version”进行确认)。这非常恼人。可以通过强制git使用您自己编译的版本来解决此问题:“git config --global core.editor '~/bin/vim'”。 - naught101
3个回答

5
当你在命令行中运行git commit时,如果没有指定提交信息,它会启动一个编辑器(在你的情况下为vim),以便你可以输入一条信息。你看到的错误来自于vim,它报告你在.vimrc文件中有错误。如果你正常启动vim,你应该会得到同样的错误提示。

从vimrc中删除了一部分,然后使用git commit -am 'first commit'提交,似乎已经成功了。 - sayth
2
我在使用vim时遇到了错误,但是如果我正常启动vim就不会出现这些错误。这两种情况都发生在函数声明内部 - 就好像它正在尝试执行该函数,即使我的vimrc从未调用过它。是否可能是git调用了另一个Vim,而该Vim不支持函数?还是其他什么问题? - Paul Brinkley

3

你的vim安装不支持python。如果你输入以下命令:

vim --version | grep python

您应该看到+python,否则这意味着Vim安装中缺少Python。

sayth@linux-kt34:~> vim --version | grep python +persistent_undo +postscript +printer +profile -python -python3 +quickfix - sayth

2

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接