Master 和 develop 分支从未同步,甚至遵循 git-bitbucket 中的流程

Master and develop branch never synced even follow git-flow process in bitbucket

我使用托管在 Bitbucket Cloud 上的存储库遵循 git-flow 分支模型。

我一直严格按照上述程序进行。然而,masterdevelop 永远不会同步,即使在发布后,Bitbucket Cloud 分支页面上的指示器告诉我 master 分支是“99 commits behind develop”和“11在开发之前提交。

每次发布时,Bitbucket Cloud 总是告诉我两个分支不同步(即使我在上次发布后没有对 master 分支做任何更改),因此我必须执行上述发布程序的第 2 步。这一步变得越来越难,因为它在合并过程中不断添加从 develop 中删除的文件(并且也应该从 master 中删除)。

我不确定我做错了什么。谁能推荐一下?

正如@matt 在上面的评论中指出的,developmaster 分支从未同步的根本原因是因为我一直在 Bitbucket 中使用 "squash and merge"公关

我刚刚通过使用 "explicit merge"(非快进),现在 developmaster 分支是同步的。

对于不同的合并策略,即。 显式合并(非快进) vs 隐式合并(快进) vs 压缩和合并 , 可以参考这篇文章 Pull Request Merge Strategies: The Great Debate 来深入讨论这些差异。我发现 GIF 很有用。