如何删除GitHub上已提交Pull Request中的错误commit
GitHub Pull Request错误commit删除解决方案
按以下步骤操作即可解决错误commit残留、PR无法重新打开的问题:
1. 确认本地分支状态正确
- 切换到目标分支:
git checkout PACS-36 - 查看提交日志,确认错误commit已经被移除,当前本地的提交链完全符合预期:
git log --oneline
如果本地还没有移除错误commit,可以用git rebase -i [错误commit的前一个commit哈希],在弹出的编辑页中将错误commit对应的行前缀从pick改为drop,保存后即可删除该提交
2. 强制推送覆盖远程分支
- 执行强制推送命令,用本地正确的分支状态覆盖远程PACS-36分支:
git push origin PACS-36 --force
注意:如果有其他开发者同时在PACS-36分支上开发,强制推送会覆盖其他人的提交,操作前请确认没有其他新的提交被推送到远程分支
3. 解决PR无法重新打开的问题
- 先确认远程仓库中PACS-36分支处于存在状态,如果你之前的操作误删了远程分支,完成上一步的强制推送后分支会自动恢复
- 刷新原#865 PR的页面,点击重新开启按钮即可,开启后刷新两次就能看到提交记录已经同步为你强制推送后的状态
- 如果还是无法重新开启原PR,直接基于当前的远程PACS-36分支新建PR即可,原#865 PR可以关闭并标注废弃,你可以在新PR的描述中添加
关联#865关联原PR的历史上下文
4. 提交记录缓存问题处理
如果操作完成后PR页面依然显示旧的错误commit,属于GitHub页面缓存问题,清除浏览器缓存或者用无痕模式访问PR页面即可看到最新状态。
内容的提问来源于stack exchange,提问作者Siddique Ahmad
相关产品推荐
相关产品推荐

