我们正在使用Visual Studio Team Services.
我们有一个Prod-Branch,它由我们的Prod-Build-Definition构建,并由我们的Prod-Release-Definition部署到我们的测试/集成和生产环境中.
随着每个Prod-Release部署到客户,我们从Prod-Branch创建了一个Prod-Rel-Version-xxx分支(如果需要,我们需要一个Hotfix).
在Sprint期间,我们正在开发Dev-Branch,它由我们的Dev-Build-Definition构建,并由我们的Dev-Release-Definition部署到我们的DEV环境中进行开发人员测试.
在Sprint(或不时)之后,Dev-Branch被合并到Main-Branch,然后合并到Prod-Branch.从那里,它被部署到客户的不同阶段进行测试.
当有Hotfix-Case时,我们修复了Prod-Rel-Version-xxx Branch上的错误,并希望重用我们现有的Prod-Build-Definition来构建这个Hotfix-Version并通过现有的Prod部署到不同的阶段-Release-Definition用于测试和使用此版本.
我们如何在这个不同的分支(Prod-Rel-Version-xxx Branch而不是Prod-Branch)中重用我们的Prod-Build-Definition?
当我看到生成定义,我想我会是可能的,只是编辑从服务器的路径(库>映射)$/NameOfOurApp/Prod,以$/NameOfOurApp/Prod-Rel-Version-x.x.x)...这应该做的伎俩还是没有?但是根据我的阅读,在服务器映射中不可能使用Build-Variables,因此我无法更改此变量,例如在Queue new Build Dialog中...
完成我的场景的最佳方法是什么?
唯一的方法是创建一个下载所有分支的构建定义.然后在任务中使用变量来选择要构建的版本.这将变得非常混乱(并且很慢).
相反,克隆构建定义要容易得多.或者,您可以从现有构建定义创建构建定义模板,并使用它来创建新的构建定义.
然而,一个更好,更好的解决方案是不依赖于这么多分支.当你真正需要创建一个修补程序时,你只需要分支,而当你在更高阶段有很多发现时,你只需要阶段分支.通过改进你工作的方式,你将能够摆脱分支,简化所有人的工作.
VSTS和TFS 2018现在支持在工作空间定义中使用变量.
| 归档时间: |
|
| 查看次数: |
1942 次 |
| 最近记录: |