Azure devops 为分支名称使用变量无效

Azure devops 为分支名称使用变量无效,azure-devops,azure-pipelines-release-pipeline,Azure Devops,Azure Pipelines Release Pipeline,我们有一个使用多个分支(dev、test、prod)的构建管道(Product1) 在发布管道/工件设置中,我们使用以下设置: 默认版本:带有标记的特定分支的最新版本 Branch:$(Branch.name)-->这可在发布时设置 我们目前的情况是: 最新的成功构建使用了dev分支 有另一个使用测试分支的成功构建 创建新版本,并将Branch.name设置为test-->它不使用test Branch,而是使用最后一个成功的版本,即dev Branch 如何在发布管道中使用分支变量?当

我们有一个使用多个分支(dev、test、prod)的构建管道(Product1)

在发布管道/工件设置中,我们使用以下设置:

  • 默认版本
    :带有标记的特定分支的最新版本
  • Branch
    :$(Branch.name)-->这可在发布时设置
我们目前的情况是:

  • 最新的成功构建使用了dev分支
  • 有另一个使用测试分支的成功构建
  • 创建新版本,并将Branch.name设置为test-->它不使用test Branch,而是使用最后一个成功的版本,即dev Branch

如何在发布管道中使用分支变量?

当您设置带有标签的特定分支的
默认版本:最新版本时

您需要为构建添加标记,然后在工件设置中指定特定的标记,否则它将使用从构建管道生成的最后一个成功构建(将忽略指定的分支)

例如,在下面的屏幕截图中,我为使用主分支的成功构建添加了一个标记
master
,然后在
Artifact
设置中指定该标记。因此,当您创建一个发行版时,它将自动选择带有标签
master
并使用master分支的最新版本


这是用于Git回购还是TFVC回购?您的问题的答案因您使用的不同而不同。我们使用的是bitbucketHello Andy,谢谢您的回复。这意味着创建发布的人必须在创建发布之前对其进行编辑。我试过了,它根据标记而不是分支变量来选择构建。有没有办法为标记使用变量?@MohamedShehata它也使用分支变量,这意味着如果您为来自master和Dev branch的构建添加相同的标记(例如,这里的tag
master
),那么如果您指定分支变量,它将获取特定分支的最新构建。否则它将从管道中拾取最新的一个(无论分支是什么)。。。在我这边一切正常…@MohamedShehata好吧,在更新的答案中看到捕获的gif。你好,安迪,谢谢你的详细回复。这意味着不可能在发布时将位设置为可设置的(这就是我试图实现的),对吗?@MohamedShehata是的,根据我的测试,您可以在发布时修改/更改变量的值(可设置),但新值不会立即反映在页面上。因此,可设置分支变量在发布时不可用,它仅在发布管道中可用,这意味着可设置值将反映在发布管道中定义的任务上。。。。