当前分支状态: A主分支(已合并了B分支),B被合并的子分支
期望的结果: 将B分支从A主分支中剔除
工具: TortoisGit(简单)
具体步骤:

  1. 基于B分支建立临时分支B2,将B2分支软重置到建立该分支之前的初始提交M。
  2. 在B2分支将软重置的改变提交,记为N(作用:将多次提交合并为一次提交)。
  3. 在B2分支将记录N提交的所有文件还原到父一级状态,之后进行提交记录为P(目的:将分支还原到初始提交M)。
    3.1 在还原到父一级的时候,要排查是否存在除了当前分支功能之外的修改,有的话要还原掉,否则算修复失败,要重来。
  4. 切换到A分支,摘取B2分支的记录P,有冲突大多以A分支为准解决,不确定的根据代码上下文和记忆决定取舍。
  5. 如果有合并不对的地方,重复第3步和第4步即可。
    END.