有人将我们的开发分支合并到我们的 Master 分支中。现在 NEXT 是 Master 的一个提交。
我们的功能分支来自 NEXT ,我们将其合并回 Next 。
我担心下一个将与 Master 差异,如果我合并 feature1 to Next 。有多个特征分支。
如何'同步' next 和 master ,以便我可以合并 features1 in 下一个'同步' feature2 to 下一个之后?
我正在使用"同步"来表示 Merge , rebase ,等等。
更新:
让我感到困惑的是, normal 是 master 后面的。文件是相同的。它似乎是为拉请求合并创建的提交。我担心的是 Next 和 Master 将具有混合的散布
master: A <--B
next: D <--- C
a是合并提交。D是下一个之后的提交。因此,然后 Master 和 NEXT 没有其他提交。这有关系吗?
这是A normal git Flow ,这没什么可担心的。
特征分支应分支develop
(在您的情况next
中),并在某个时候合并为master
(通常在每个新版本或版本上)。develop
和master
通常会差异;develop
几乎应该始终领先于master
。您只应该在有新版本或hotfix时才推到master
。
分支您的功能分支在develop
中分支,一旦您对更改感到满意,请将功能分支合并回develop
。一旦准备好发布,并且确保没有一个特征分支相互冲突,则可以将develop
合并回master
。这将带来每个功能分支的更改的所有 master
。
您的两个分支当前看起来如下:
next ------ A -
master ------ A -- B
当您合并特征分支到next
时:
feature2 -----------------
feature1 --------------
next ------ A - -- C --- E -- G -
master ------ A -- B --- D --- F ---- H
希望上面的ASCII图有助于说明这一点,尽管许多有用的图片图表可以在 github 。
希望这会有所帮助!:)