【发布时间】:2014-08-12 14:32:38
【问题描述】:
我有两个并行项目,有两个分支 A 和 B。
每个分支都应该单独开发,并在开发完成后合并。
我错误地将分支 B 两次合并到分支 A 中。合并后,两个分支都有更多的提交。
合并包含一些已创建到分支 B 的新文件,并且分支 A 和分支 B 共享的文件也很少被分支 B 修改。
我想要做的是,恢复分支A中发生的合并,然后继续分支A和分支B的开发(在恢复后对两个分支进行更多提交),然后能够合并这些分支稍后再次。
我在这里做了一些研究,并提出了以下方案。更熟悉 git 的人可以建议这是否是实现我想要实现的目标的好方法吗?
假设合并提交是:123
- 在分支 A 中运行 revert 命令
git revert -m 1 123
(由于还原,将所有删除提交到分支 A)
分别继续分支 A 和分支 B 的工作。
稍后,再次合并这两个分支。我将首先基于 A 创建一个新的分支 C。然后我会在分支 C 中还原原始还原。然后我会将分支 B 合并到分支 C。
git checkout -b C
git 还原 123
git 合并 B
这听起来像是解决这个问题的正确方法吗?
任何帮助将不胜感激。提前致谢。
【问题讨论】:
-
类似问题的优秀答案:stackoverflow.com/questions/31332789/…