使用pip安装GitHub Pull Request时出现404错误的原因与解决方法
关于pip安装Git Pull Request出现404的问题解答
一、URL失效的原因
- PR已被合并:当PR被合并到仓库主分支后,GitHub会自动删除
refs/pull/XXX/merge这个临时引用——合并后的代码已经整合到正式分支里,这个合并引用就没有存在的必要了。 - PR已被关闭:如果PR被作者或仓库维护者关闭(未合并),GitHub同样会移除对应的
merge引用,导致访问时返回404。 - 仓库权限或状态变更:原仓库转为私有、你失去了访问权限,或者仓库被删除/重命名/转移,都会让这个URL无法访问。
二、可行的解决办法
- 安装仓库主分支:如果PR已经被合并,直接安装仓库的主分支(比如main或master)即可,命令示例:
python3 -m pip install git+https://github.com/jamalex/notion-py.git@main - 安装PR的源分支:若PR未被合并只是关闭,或者你需要的就是PR里的代码,先去GitHub找到该PR对应的源分支名称(比如
feature/fix-notion-api),然后用以下命令安装:python3 -m pip install git+https://github.com/jamalex/notion-py.git@<源分支名称> - 手动克隆合并后安装:如果PR的引用已经不存在,但你确实需要那部分代码,可以先克隆仓库,手动拉取PR代码并合并,再本地安装:
git clone https://github.com/jamalex/notion-py.git cd notion-py git fetch origin pull/294/head:pr-294 git merge pr-294 python3 -m pip install . - 使用已整合该PR的fork仓库:如果原仓库没合并这个PR,但有其他用户fork后合并了该PR,可以安装这个fork仓库的对应分支。
内容的提问来源于stack exchange,提问作者emmby
相关产品推荐
相关产品推荐

