我正在尝试使用 git-filter-repo 从我的存储库中删除大型二进制文件。我以前没有使用过 python。我通过单击下载的 .exe 文件安装了最新的 python,因为这是 git-filter-repo 的要求。说明如下:
git-filter-repo 是一个单文件 python 脚本,这样做是为了使基本使用的安装变得简单:只需将其复制到你的 $PATH 中
https://github.com/newren/git-filter-repo/#how-do-i-install-it
我尝试使用 python 应用程序打开 git-filter-repo.py。我也无法在 python 应用程序中使用 cd、ls 或 dir。
答案1
pip install
他们现在有一个可以正常运行的 Python 包:
python3 -m pip install --user git-filter-repo
该方法将安装命令行可执行文件和 Python 库,您可以按照此处所示使用。
该可执行文件名为,Git 会在类似 的调用中git-filter-repo
自动选取 中PATH
带有名称的任何可执行文件,这就是它的工作原理。git-*
git *
Ubuntu 23.04
在此 Ubuntu 版本或之前的版本中,Ubuntu 开始向任何 pip 安装添加极其烦人(但在某种程度上可以理解)的“错误:外部管理环境”消息。
值得庆幸的是他们有一个 debian 包所以你可以:
sudo apt install git-filter-repo
或者您也可以覆盖错误,或者使用虚拟环境或新pipx
事物:https://stackoverflow.com/questions/75608323/how-do-i-solve-error-externally-managed-environment-every-time-i-use-pip-3
sudo apt install pipx
pipx install git-filter-repo
将可执行文件放置在~/.local/bin/git-filter-repo
。
我只是不明白为什么pip
要停止使用旧的界面--user
,为什么他们每两年就要更换一次界面!!!
手动安装
如果由于某种原因您不想使用 pip,您也可以:
# Add to bashrc.
export PATH="${HOME}/bin:${PATH}"
mkdir -p ~/bin
wget -O ~/bin/git-filter-repo https://raw.githubusercontent.com/newren/git-filter-repo/7b3e714b94a6e5b9f478cb981c7f560ef3f36506/git-filter-repo
chmod +x ~/bin/git-filter-repo
在 Ubuntu 20.04、git-filter-repo ac039ecc095d 上测试。
答案2
在 Mac 上,你可以使用 homebrew 安装它:
$ brew install git-filter-repo
答案3
这就是我让它工作的方法。
- 应该安装 Python 并将其添加到系统路径中。
- 应该安装 Git 并将 git 添加到系统路径中。
- 下载 git-filter-repo
- 将名为 git-filter-repo 的文件第一行中的“python3”替换为“python”。根据您的 Python 安装,您可以跳过此步骤。
- 调用 git --exec-path
- 将 git-filter-repo 文件移动到显示的位置。(git 的路径)。
- 要使用,请输入 git filter-repo。帮助选项不起作用,但他们有在线文档。
答案4
在 Mac 上,我只需下载https://github.com/newren/git-filter-repo/blob/main/git-filter-repo进入我的 ~/local/bin (它已经在我的路径上,我把所有的批处理文件等都保存在那里)。之后chmod +x git-filter-repo
,我只需从我的 repo 目录运行它,如下所示:git-filter-repo --path mydir
。