【问题标题】:Using GitFlow in Azure DevOps (Does it mean multiple pipelines?)在 Azure DevOps 中使用 GitFlow(是否意味着多个管道?)
【发布时间】:2019-06-02 01:39:44
【问题描述】:

我们的开发团队想要扩展(坏笑话)使用类似 GitFlow 的分支系统,其中会有一个 dev、uat 和 release 分支(都需要构建),我看不出一个聪明的使用方法部署不同分支的相同管道,有人可以告诉我最好的方法吗?它是否真的为所需的每个分支创建多个管道?

【问题讨论】:

  • 拥有“dev”、“uat”和“release”分支不是类似于 GitFlow。

标签: git build azure-devops git-flow


【解决方案1】:

不,您不需要创建多个发布管道。

我不知道您在构建管道中做什么,但在发布中,您可以创建一个发布管道,其中包含多个“阶段”(用于开发、UAT 和发布)和多个工件,每个阶段和工件,您可以配置分支,工件将来自哪个分支。

查看此配置:

:

当然,您需要配置触发器,您不想在发布后立即部署 3 个阶段(您也可以“玩”它,例如将发布阶段放在 UAT 之后)。

【讨论】:

  • 嗨,我认为这无济于事,因为这是基于相同的工件,从 gitflow 开始,您将拥有开发工件,然后是 uat 工件,然后是主工件,所以这不起作用..或错过了什么?
  • 你也可以放3个工件,看我更新的答案。
  • 哦,这更有意义!猜测您也只能将某些工件强制到特定阶段!这样问题就解决了!谢谢谢基
  • 我们正在尝试使用与此类似的流程 - 但我们碰壁了。问题在于“UAT”和“发布”阶段的“部署前过滤器”......我们不能像“连续”中那样在“部署前过滤器”中使用“发布/*”之类的分支过滤器部署触发器”。我们可以将“develop”用于“Dev”,将“master”用于“Release”。任何人都可以提供一些建议吗?我们使用 GitFlow 作为我们的分支策略,并希望使用以下分支/阶段触发器:developDev、release/*UAT 和 masterRelease。
  • 我们最终建立了一个由'develop'、'release*'和master触发的构建管道。该构建管道写入相同的工件:'drop'。然后,我们创建了 x3 发布管道——“开发”、“测试”和“生产”。每个发布管道都配置为部署到正确的环境。然后我们设置“Continuous Deployment trigger”以过滤正确的分支(“develop”、“release/*”和“master”)。最后,我们在“生产”发布管道阶段添加了“部署前批准”规则。似乎在做我们想做的事……
猜你喜欢
  • 1970-01-01
  • 2018-06-14
  • 2014-08-15
  • 2020-05-19
  • 1970-01-01
  • 2019-09-12
  • 1970-01-01
  • 1970-01-01
  • 2020-12-15
相关资源
最近更新 更多