并行开发“同级”分支的最佳git工作流程是什么

时间:2019-02-08 04:30:29

标签: git version-control

在处理功能分支(feature-branch-a)(feature-branch-a是master的分支)时,我想对master进行一些修复。

由于我在feature-branch-a中进行了很多更改,因此将修复基于feature-branch-a而不是master分支是很有意义的,所以我创建了新分支{ fixture-B中的{1}}(因为我最终会将feature-branch-a合并到feature-branch-a中)。但是,我仍然继续与这个新分支master一起开发feature-branch-a。现在,将分支fixture-Bfixture-B合并会产生feature-branch-a,所以没有执行“合并提交”(按照我的意图)。

我在哪里弄错了/如何最好地解决这个问题?

1 个答案:

答案 0 :(得分:0)

由于feature-b是从feature-a创建的,因此a到b的合并将导致noop:没有要合并的内容,因为源分支(feature-a)已经是目的地feature-b

 a--a--a  (feature-a)
        \
         b--b--b (feature-b)

git checkout feature-b ; git merge feature-a不会移动feature-b头。

git checkout feature-a ; git merge feature-b会将feature-a HEAD更新为feature-b(称为“快速合并”):

 a--a--a  
        \
         b--b--b (feature-b, feature-a)