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

Git三分支场景下撤销错误合并:回退提交是否影响后续合并?

Git分支回退问题解答

先明确你的分支状态:

  • 提交1是错误的Develop→Feature合并,把Develop的内容合到了Feature分支
  • 提交3是Develop→Master的合并,这部分内容仅存在于Master分支,和当前Feature分支无关联
  • 提交2还处于PR阶段,尚未正式合并到目标分支

核心结论

在Feature分支回退提交1,不会丢失提交3里Develop分支的相关内容。原因很简单:提交3的变更仅合并到了Master分支,Feature分支从未包含过提交3的内容——你要回退的只是提交1那次错误合并带来的Develop内容,和Master里的提交3是完全独立的两个操作。

具体操作建议

考虑到提交2处于PR阶段(推测Feature分支已推送到远程仓库),更推荐用git revert撤销提交1,这种方式不会改写分支历史,避免打乱PR流程:

# 通过git log获取提交1的哈希值
git revert -m 1 <提交1的哈希值>

这里-m 1是指定以合并前Feature分支的状态为基准,撤销这次错误合并。

如果Feature分支尚未推送到远程,也可以直接用git reset回退到提交1之前的状态:

git reset --hard <提交1之前的Feature分支提交哈希>

但这种方式会改写分支历史,若已推送过分支,不建议使用,避免给协作成员造成困扰。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.06 19:46:04