预提交 x VSCode: env: python3.9: 没有那个文件或目录
pre-commit x VSCode: env: python3.9: No such file or directory
我在代码中使用 pre-commit
到 运行 black
flake8
和 isort
。
I 运行 pre-commit install
并且正如预期的那样它创建了 .git/hooks/pre-commit
开始像:
#!/usr/bin/env python3.9
# File generated by pre-commit: https://pre-commit.com
# ID: 138fd403232d2ddd5efb44317e38bf03
import os
import sys
...
钩子在终端中工作正常:
$ git commit -am "remove commented block"
isort....................................................................Passed
black....................................................................Passed
flake8...................................................................Passed
[main f30007d] remove commented block
1 file changed, 4 deletions(-)
但是 运行从 VSCode 的源代码控制面板中使用它会产生错误(命令输出):
> git -c user.useConfigOnly=true commit --quiet --allow-empty-message --file -
env: python3.9: No such file or directory
不确定那是从哪里来的。此外(虽然不确定是否重要)我再次检查:终端的 python
和 VSCode 的选定 Python 解释器都指向相同的 /Users/victor/.pyenv/shims/python
执行 git
命令时,pyenv
未被 VSCode 的源控制面板加载似乎是一个问题。
我尝试将一些东西(如 $(pyenv init -)
)移动到早期的 zsh 配置文件中,如 .zshenv
,但这没有帮助。
最后指定完整路径搞定了
#!/usr/bin/env /Users/victor/.pyenv/shims/python3.9
# File generated by pre-commit: https://pre-commit.com
# ID: 138fd403232d2ddd5efb44317e38bf03
import os
import sys
...
我在代码中使用 pre-commit
到 运行 black
flake8
和 isort
。
I 运行 pre-commit install
并且正如预期的那样它创建了 .git/hooks/pre-commit
开始像:
#!/usr/bin/env python3.9
# File generated by pre-commit: https://pre-commit.com
# ID: 138fd403232d2ddd5efb44317e38bf03
import os
import sys
...
钩子在终端中工作正常:
$ git commit -am "remove commented block"
isort....................................................................Passed
black....................................................................Passed
flake8...................................................................Passed
[main f30007d] remove commented block
1 file changed, 4 deletions(-)
但是 运行从 VSCode 的源代码控制面板中使用它会产生错误(命令输出):
> git -c user.useConfigOnly=true commit --quiet --allow-empty-message --file -
env: python3.9: No such file or directory
不确定那是从哪里来的。此外(虽然不确定是否重要)我再次检查:终端的 python
和 VSCode 的选定 Python 解释器都指向相同的 /Users/victor/.pyenv/shims/python
执行 git
命令时,pyenv
未被 VSCode 的源控制面板加载似乎是一个问题。
我尝试将一些东西(如 $(pyenv init -)
)移动到早期的 zsh 配置文件中,如 .zshenv
,但这没有帮助。
最后指定完整路径搞定了
#!/usr/bin/env /Users/victor/.pyenv/shims/python3.9
# File generated by pre-commit: https://pre-commit.com
# ID: 138fd403232d2ddd5efb44317e38bf03
import os
import sys
...