有人将我们的开发分支下一步合并到我们的主分支中。现在下一个是 主后面的一个提交。
我们的功能分支来自下一个,我们会从它们合并回下一个。
如果我将 feature1 合并到下一个,我担心下一个会偏离主。有多个功能分支。
如何'同步'下一步和主,以便我可以将 feature1 合并到下一步中之后'同步' feature2 到下一个?
我正在使用'synchronize'来表示 merge , rebase 等。
更新:
让我感到困惑的是,正常 。文件是一样的。它似乎是为pull请求合并创建的提交。我担心的是下一个和主人会出现混合分歧
master: A <--B
\
next: D <--- C
A是合并提交。 合并提交后,D是下一步 的提交。那么, master 和 next 就不会提交其他提交。那有关系吗?
答案 0 :(得分:1)
这是普通 git flow ,无需担心。
功能分支应该从develop
(在您的情况下为next
)分支,并在某些时候(通常在每个新版本或版本上)合并到master
。 develop
和master
分歧很常见; develop
几乎应始终领先于master
。当有新版本或修补程序时,您应该只是推送到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 找到一些有用的图片图表来说明git flow。
希望这有帮助! :)