git commit error:python 2和python 3.7之间的版本不一致

问题描述 投票:0回答:2

我在我的项目中使用Python 3.7。 然后,当我试图做

edamame$ git commit --amend --no-edit

我得到了跟随错误(虽然git status工作正常):

Your PYTHONPATH points to a site-packages dir for Python 3.x but you are running Python 2.x!
     PYTHONPATH is currently: "/Users/edamame/tools/sim/scripting/:/usr/local/lib/python3.7/:/usr/local/lib/python3.7/site-packages/"
     You should `unset PYTHONPATH` to fix this.

我试过以下但没有运气:

edamame$ pip3 install git

Collecting git
  Could not find a version that satisfies the requirement git (from versions: )
No matching distribution found for git

所以我必须每次手动设置PYTHONPATH,如下所示,这非常不方便。 有什么建议吗? 谢谢!

edamame$ export PYTHONPATH=
python-3.x git python-2.7 pre-commit-hook
2个回答
0
投票

如果您使用的是Bash shell ,可以将~/.bashrc export PYTHONPATH=添加,然后使用以下命令重新加载~/.bashrc

$ source ~/.bashrc

这样你就不必每次都手动输入export PYTHONPATH=


0
投票

问题是你的pre-commit或你post-commit挂钩使用Python 2.7。

你应该在编辑器中打开每一个,看看他们是否正在使用Python 2.7(通过查看shebang),自定义版本,或/usr/bin/python/usr/bin/python2 ,或/usr/bin/python2.7 。 如果是这样,你应该将它转换为使用适当的shebang的Python 3或删除它(只需删除它就足够了)。

如果它来自另一个项目或存储库,您可以尝试重新安装该项目的Python 3版本,这可能会安装您的钩子的Python 3版本。

© www.soinside.com 2019 - 2024. All rights reserved.