在GitHub合并两个Fork分支时,创建PR找不到目标Fork怎么办?
无法找到目标Fork创建Pull Request的原因及解决办法
可能的原因
- GitHub默认PR界面只会列出你自己名下的分支,或是已经添加为本地远程仓库的Fork。如果没把对方的Fork添加为远程,界面不会自动显示。
- 目标仓库如果是私有状态,你没有访问权限也会看不到,但从链接看该仓库是公开的,这个情况概率低,可以顺便排查。
解决步骤
1. 本地添加对方Fork为远程仓库
打开本地仓库的终端,执行命令:
# 添加远程仓库,命名为mmozeiko(名字可以自己改) git remote add mmozeiko https://github.com/mmozeiko/glfw.git # 拉取对方所有分支的内容 git fetch mmozeiko
2. 本地合并分支(可选)
要是想先在本地验证合并效果再推到GitHub:
# 切换到你的目标分支 git checkout resize-move-fix # 合并对方的分支 git merge mmozeiko/unblock_events_windows_move_resize # 处理完冲突后推送到你的仓库 git push origin resize-move-fix
3. 直接在GitHub手动创建跨Fork PR
不想本地操作的话,直接在GitHub上操作:
- 打开你的仓库页面,进入「Pull requests」标签页,点击「New pull request」
- 在「Compare changes」区域,点击「compare across forks」选项
- 在「head repository」下拉框里选
mmozeiko/glfw,分支选unblock_events_windows_move_resize - 「base repository」选你的
ItsSunnyMonster/glfw,分支选resize-move-fix - 确认对比的内容没问题后,填写PR信息就能创建了
4. 权限排查
要是还是找不到对方的Fork,先确认对方仓库是公开状态,且你能正常打开对方的仓库页面。如果是私有仓库,得让对方把你加为协作者才行。
内容的提问来源于stack exchange,提问作者SunnyMonster
相关产品推荐
相关产品推荐

