如何将本地变更推送到贡献者的fork分支以更新PR?
无推送权限时向PR分支提交修改的解决方案
你没有对方fork仓库的直接推送权限,网页端能编辑是因为GitHub自动帮你创建了新fork并提交PR到原贡献者分支,本地操作可以按以下步骤来:
方式一:通过自建fork中转提交
- 在GitHub上fork原贡献者的那个fork仓库(就是提交PR的源仓库)
- 在本地仓库添加这个自建fork作为远程:
git remote add my-fork https://github.com/你的用户名/目标仓库名.git - 将本地修改后的分支推送到自己的fork:
git push my-fork 原PR对应的分支名 - 登录GitHub,在你的自建fork页面发起PR,目标仓库选择原贡献者的fork仓库,目标分支选原PR的分支
- 原贡献者合并这个PR后,他的初始PR里就会包含你的修改
方式二:同步网页端编辑的修改到本地
如果已经通过网页端完成了编辑,想把修改同步到本地,直接拉取原贡献者分支的最新代码即可:
git pull 原远程仓库别名 原分支名
(比如原远程是origin或者upstream,对应替换就行)
注意点
- 网页端的编辑功能本质是GitHub自动帮你完成了「自建fork→提交PR到原贡献者分支」的流程,和方式一逻辑一致
- 没有权限的情况下,直接推送原贡献者的fork仓库肯定会失败,必须通过自己的fork中转
内容的提问来源于stack exchange,提问作者beyarkay
相关产品推荐
相关产品推荐

