Sourcetree 在 origin 中显示 develop 和 master,但是 bitbucket 只显示 master 和 develop 合并,如何解决?

Sourcetree shows develop and master in origin, but bitbucket shows only master and develop merged, how to fix it?

我正在尝试将 gitflow 与 bitbucket 和 sourcetree 结合使用,谁能告诉我什么是最好的?保持开发和发布 branches/tags 始终与母版分开或始终合并它?

我想将它们分开,但是当我在 bitbucket 的分支部分进行推送时,只有一个主部分,而在合并部分是其他部分,最好的方法是什么?以及如何使用 sourcetree 来使用 gitflow 的最佳方式?

谢谢。

编辑。

这是屏幕截图。

本地是这样的

而在 bitbucket 中是这样的:(theactive 仅显示 master,而 develop 仅在合并时显示)

这是正确的吗?我真的不知道什么时候应该看到合并的分支,什么地方不应该。

一个分支被认为是 "merged into master" 如果它的头是 可达 master.

Reachable 意味着如果您从 master 开始并在某个时候通过其祖先向后跟踪每个提交,您会找到您正在寻找的提交。

例如:

              G [master]
             /
A---B---C---D   [branch-a]
     \
      E---F     [branch-b]

在这里,branch-a 可以从 master 到达。从 master 的头部开始(提交 G)并返回到 D,这是 branch-a 的头部。

相比之下,branch-b 无法从 master 到达。如果从 master 向后追溯,您会得到 GDCBAbranch-b 的头部(提交 F)未找到。

由于您目前只有一个提交,同时 developmaster 都指向它,因此 develop 必然可以从 master 访问,因此 "merged".

一旦您开始向 develop 添加尚未在 master 中的提交,develop 将不再显示为 "merged"。

编辑:

这是 Git Flow 的常见场景。这是简化的;我没有显示功能或发布分支。

A           [master]
 \
  B---C---D [develop]

此处您正在处理 develop,其中包含三个提交 BCD,它们无法从 master 访问。 develop 合并。

现在您决定发布,结果类似于

A-----------E [master]
 \         /
  B---C---D   [develop]

develop 现在合并到 master,因为我们可以从 master(在提交 [=51 时)到达 develop(在提交 D 时) =]).

现在你又开始工作了...

A-----------E   [master]
 \         /
  B---C---D---F [develop]

...和develop不再合并。