我正在尝试使用命令行提交消息将提交推送到我的存储库:
git commit -m "some commit message"
但我不断收到以下错误:
error: pathspec 'commit' did not match any file(s) known to git.
error: pathspec 'message' did not match any file(s) known to git.
我已经看到这个问题在明显的情况下得到了回答,比如在推送提交时忘记使用“-m”标志(这里),但我使用的是正确的标志——这种确切的语法适用于其他机器上的克隆相同的存储库。在麻烦的(Red Hat 4.1.2)机器上,我正在使用:
git version 1.7.3.3
如果我尝试使用长格式标志,我会得到同样的错误:
git commit --message="some commit message"
有没有人见过这个?我在这台机器上没有 root 访问权限,所以我无法更新,但我想知道这是否是上述版本的已知问题(虽然没有从谷歌搜索中找到任何问题),或者可能是这个系统上的 git 配置?
编辑:解决了!
我想我找到了问题所在。我对 Red Hat 不太熟悉,但我发现可执行文件/usr/local/bin/git指向一些名为run-rhel 的可执行文件,例如
/usr/local/bin/git -> run-rhel
而且这个可执行文件弄乱了 git 的命令结构。我将真正的 git 可执行文件添加到我的 $PATH 之前:
export PATH=/path/to/real/executable:$PATH
现在一切似乎都正常了!感谢您的快速回复!