You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Git中如何撤销已推送的合并master提交并保留目标提交?

解决方案

1. 先同步本地与远程分支

先确保本地分支和远程保持一致:

git fetch origin
git checkout org-manage

2. 撤销错误的合并提交

根据分支使用场景选对应的方法:

方法一:重置到正确提交(适合仅你一人使用的分支)

如果这个远程分支只有你在操作,直接把分支回滚到你想保留的那个提交:

# 把<good-commit-hash>替换成你要保留的提交哈希值
git reset --hard <good-commit-hash>
# 强制推送覆盖远程的错误分支
git push origin org-manage --force

方法二:反向撤销提交(适合多人协作的分支)

如果分支还有其他同事在用,为了不破坏共同的提交历史,用反向提交来抵消错误合并的变更:

# 把<bad-merge-commit-hash>替换成那个错误合并提交的哈希值
# -m 1表示保留当前分支(你的org-manage)内容,丢弃master合并进来的所有变更
git revert -m 1 <bad-merge-commit-hash>
# 推送新的撤销提交到远程
git push origin org-manage

3. 确认并创建PR

用git log查看提交历史,确认错误合并的变更已经被移除。之后就可以正常去代码托管平台,基于你的org-manage分支创建Pull Request了。

内容的提问来源于stack exchange,提问作者TikuBadmash

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 03:55:02