git filter repo - 找不到 Python,但它已安装

6

这是我第一次尝试使用git filter-repo。

我已经安装了Python 3.9。

我尝试运行以下命令:

git filter-repo --strip-blobs-bigger-than 100M

每次都失败:

  • Git Bash: git: 'filter-repo' 不是 git 命令。
  • Powershell: 找不到 Python;
  • CMD: 找不到 Python;

请问我缺少什么,有什么建议吗?


我意识到我的最初问题是没有把文件放在 git 核心中。 然而,现在我看到的是 .lock 文件权限被拒绝,但我不知道为什么。 - spsuk
2个回答

3

感谢您的回复。请查看我在帖子上的初始评论。我成功识别了该命令,但似乎无法更改.lock文件。作为它们的创建者,我不确定原因是什么。 - spsuk
@spsuk 检查是否有其他进程正在使用这些锁定文件。尝试在重新启动后检查问题是否仍然存在,因为此时活动的进程较少,也不太可能保持对这些锁定文件的控制。 - VonC
如果在 Mac 上工作,我注意到在折腾 Python2/3、pip2/3、pyenv 和 Git 太久后,现在也有 Homebrew 选项了。无痛操作:https://formulae.brew.sh/formula/git-filter-repo - bammmmmmmmm
@user3271319 谢谢您。为了更好的展示,我已将您的评论包含在答案中。 - VonC

0
我遇到了同样的问题:我将git-filter-repo放在PATH下,但是我仍然遇到了相同的“找不到Python”错误,尽管Python已经安装并且也在PATH下。
最后,我解决了这个问题(或者说绕过了它),我通过修改下载的git-filter-repo文件的she-bang(位于顶部的第一行注释)来解决。我将它改为:
#!/usr/bin/env python3

#!C:\Program Files\Python310\python.exe

(在我的系统上的真实Python路径)现在它可以工作了。这真让人惊讶,因为据我所知,Windows并不遵守那些she-bang行。

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