卸载预提交阻止 'git commit' (pipenv)
Uninstalled pre-commit preventing 'git commit' (pipenv)
我最近从我的环境中卸载了预提交。我在 pipenv 中执行了以下操作:
pipenv --rm
<deleted Pipfile and Pipfile.lock>
pipenv install -r requirements.txt
我确保预提交模块不再在 requirements.txt 中。当我进行 git 提交时,我得到:
~/my_project/.venv/bin/python: No module named pre_commit
这阻止了我提交,我不知道这是从哪里来的,因为没有安装预提交。此外,指定的回溯路径指向 python 而不是 python3。我错过了什么?
您的 git
存储库中仍然安装了 pre-commit
个挂钩。您可以通过简单地删除存储库中的 .git/hooks/pre-commit
来删除它们,之后提交时将不再调用 pre-commit
。
通常,删除由 pre-commit install
安装的挂钩的方法是调用 pre-commit uninstall
——但如果您已从系统中删除 pre-commit
,则可以手动删除挂钩脚本
您通常可以通过以下方式找到它们:
grep pre-commit.com .git/hooks/*
因为该标记已列出 in the hook files
您可以从那里删除它们:
grep -l pre-commit.com .git/hooks/* | xargs rm
免责声明:我做了 pre-commit
我最近从我的环境中卸载了预提交。我在 pipenv 中执行了以下操作:
pipenv --rm
<deleted Pipfile and Pipfile.lock>
pipenv install -r requirements.txt
我确保预提交模块不再在 requirements.txt 中。当我进行 git 提交时,我得到:
~/my_project/.venv/bin/python: No module named pre_commit
这阻止了我提交,我不知道这是从哪里来的,因为没有安装预提交。此外,指定的回溯路径指向 python 而不是 python3。我错过了什么?
您的 git
存储库中仍然安装了 pre-commit
个挂钩。您可以通过简单地删除存储库中的 .git/hooks/pre-commit
来删除它们,之后提交时将不再调用 pre-commit
。
通常,删除由 pre-commit install
安装的挂钩的方法是调用 pre-commit uninstall
——但如果您已从系统中删除 pre-commit
,则可以手动删除挂钩脚本
您通常可以通过以下方式找到它们:
grep pre-commit.com .git/hooks/*
因为该标记已列出 in the hook files
您可以从那里删除它们:
grep -l pre-commit.com .git/hooks/* | xargs rm
免责声明:我做了 pre-commit