用于连续交付系统的多个环境的Github工作流

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

如何为Azure DevOps CI / CD使用GitHub从一个分支到另一个分支进行部分合并?

我真的是Github和Azure DevOps的新手。我刚刚开始使用Azure DevOps学习CI / CD,并使用Gi​​tHub作为项目源构建了一些管道。

您能帮我解决如何管理CI的工作流程吗?

我有两个环境-一个是开发环境,另一个是实时环境。每个分支都有自己的分支,例如,针对开发环境进行实时和开发的主管。涉及到两个开发人员来进行功能A和功能B之类的更改。因此,在完成工作后,他们提交了更改并将其合并到开发分支,该分支将使用CI / CD管道自动进行部署。

[在开发环境中,测试人员测试了代码,发现功能B无法正常工作。然后对功能A进行确定。

现在,我们只想将与功能A相关的代码部署到master分支。那应该是什么工作流程?我们如何合并到master分支?

PS:每次提交的CI触发都发生在任何分支上。提交ID与Azure板中的工作ID相关联。

git github azure-devops
1个回答
0
投票

Microsoft关于branching strategy的文档非常值得一读,重点是要使事情尽可能简单。

如果使用multi-stage pipelines,其中在代码中将构建(CI)和发布(CD)阶段定义为一个管道,那么这鼓励您从一个分支构建和部署代码。

[如果确实是2个开发人员,并且同时开发/正在开发2个功能,我想说开发分支是过分的,仅master和Feature分支就足够了。想法是,在功能部件B被合并之前,功能部件A被合并到主设备,并一直通过您的管道到达您的实时环境。希望在极少数情况下,master中断,然后“停止运行”,每个人都在合并任何其他功能之前努力修复master。

[例如,如果无法在CI时通过集成测试来验证功能,并且需要对环境进行物理部署,则您可以研究应用程序架构,这些架构可以根据以下内容及时有效地启动和降低环境:功能分支(例如,容器化(AKS)或无服务器(Azure函数))。

最幸运的是该项目!

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