GitHub新手求助:创建后如何更改Pull Request的基准分支?
如何更改GitHub Pull Request的基准分支
嘿,作为GitHub新手遇到这种情况太正常啦!我来一步步教你把PR的基准分支从main_branch改成new_feature_branch,有两种方法任你选:
方法一:直接在GitHub网页上操作(简单快捷)
- 打开你已经发起的Pull Request页面,在PR标题的右侧,找到「Edit」按钮(就是那个小铅笔图标)
- 页面会跳转到PR的编辑界面,在「base」下拉菜单里,把原来的
main_branch换成new_feature_branch - 确认选择后,点击「Update Pull Request」按钮就搞定了!GitHub会自动重新对比你的分支和新基准分支的差异,要是有冲突也会提示你处理
方法二:本地命令行操作(适合习惯用终端的同学)
如果想更稳妥地处理可能出现的冲突,推荐用这种方式:
- 先确保本地仓库和上游仓库同步(如果还没添加上游远程地址,先执行这步):
git remote add upstream https://github.com/上游仓库的实际地址.git - 拉取上游仓库的最新代码:
git fetch upstream - 切换到你自己的
main_branch分支:git checkout main_branch - 把你的分支重新基于上游的
new_feature_branch:git rebase upstream/new_feature_branch- 要是遇到冲突,先手动修改冲突文件,然后执行
git add 冲突文件名,再运行git rebase --continue,直到rebase完成
- 要是遇到冲突,先手动修改冲突文件,然后执行
- 因为rebase改变了提交历史,需要强制推送到你的复刻仓库:
git push origin main_branch --force - 回到PR页面刷新一下,就能看到基准分支已经自动更新成
new_feature_branch了
小提醒
- 如果你的PR已经有审核过的评论,更改基准分支后最好提醒一下审核者,因为提交历史变了,他们可能需要重新查看
- 强制推送的时候要注意:这个分支只有你自己在修改哦,不然会覆盖别人的工作
- 如果网页操作时提示有冲突,优先在本地解决后再推送,或者用GitHub网页上的「Resolve conflicts」工具处理
内容的提问来源于stack exchange,提问作者AspiringMat




