如何在GitHub已关闭Pull Request中移除/替换提交?
解决步骤
别担心,这种情况处理起来其实挺直接的,我来一步步给你说清楚怎么做:
1. 确认本地提交的作者信息已更新
先验证一下你修改后的提交是否已经正确替换了作者邮箱,在本地仓库执行:
git log --oneline --pretty=format:"%h %an <%ae>"
查看输出的最新提交,确保显示的是你设置的新名字和邮箱。
2. 强制推送到你的远程fork仓库
因为你已经关闭了原PR,现在可以放心地把更新后的提交强制推送到自己的fork仓库里。执行以下命令(把<你的分支名>替换成你之前用来提交PR的分支名称,比如main或者你自定义的feature分支):
git push -f origin <你的分支名>
这一步会覆盖你fork仓库里对应分支的旧提交,完全替换成你修改后的版本。
3. 创建新的Pull Request
打开你在GitHub上的fork仓库页面,切换到刚刚推送更新的分支,然后点击页面上的「Compare & pull request」按钮,按照提示完成新PR的创建即可。原仓库的维护者只会看到你更新后的干净提交,旧的带隐私邮箱的提交不会出现在新PR里。
额外小提示
为了避免以后再出现类似问题,建议提前配置好Git的作者信息:
- 设置全局默认信息(所有仓库生效):
git config --global user.name "你的名字" git config --global user.email "你的新邮箱"
- 或者只针对当前仓库设置:
git config user.name "你的名字" git config user.email "你的新邮箱"
内容的提问来源于stack exchange,提问作者o.v
相关产品推荐
相关产品推荐

