为什么 Gitflow 发布操作在 Bitbucket 中做了这么多操作

问题描述 投票:0回答:1

我了解到 GitFlow 中的发布操作只是将开发分支(最新更新)合并到带有 TAG 的release/XXX分支。

我想简单地做如下:

git checkout -b release/XXX
git tag V1.0
git push

当我在 Bitbucket 上尝试此操作时,单击“开始”并完成“新版本”后,我会在提交日志上执行额外的操作(见下图):

  • 绿色箭头:Bitbucket中触发释放流程
  • 红色箭头:从主分支再次合并回开发(这让我困惑为什么需要它)。

enter image description here

enter image description here

当我尝试使用 GIT-FLOW 发布时,Bitbucket 似乎会执行以下操作:

// on develop branch
git checkout -b release/V1.0  //#1
git tag V1.0                  //#2
git checkout main             //#3
git merge release/V1.0        //#4
git checkout develop          //#5
git merge main                //#6

发布时为何涉及到主分支(步骤#3~#5)?另外,为什么需要额外合并回开发(第 6 步),主分支有哪些变化?

git bitbucket git-flow
1个回答
0
投票

发生这种情况是因为您在开始发布后立即完成了发布:

当我在 Bitbucket 上尝试此操作时,单击“开始”并完成“新版本”后...

“开始”发布会创建当时指向

develop
的发布分支,“完成”发布会将其合并到
main
中,然后将
main
合并到
develop
中。您只需先“开始”发布即可。然后将您的提交合并到发布分支中,当您完成测试并准备将其发布到生产中时,就完成了它。合并到
main
表示您已部署到生产环境。通过这种方式,
main
分支始终代表生产中的内容。合并回
develop
确保发布分支上的所有新代码都已返回到
develop
,这样您就不会丢失它。

© www.soinside.com 2019 - 2024. All rights reserved.