Azure 管道 - 在多个存储库中指定分支名称

Azure pipeline - specify branch name in multiple repository

作为 的延续,我正在尝试通过在存储库下定义它来检查我的 yaml 中的多个存储库,如下所示。我无法理解在哪里更改分支以确保我的任务(例如结帐)不会发生在 master 上,而是发生在我的自定义分支上。

resources: 
repositories:
  - repository: mybitbucketrepo
    type: bitbucket
    endpoint: myserviceconnection
    trigger:  # CI trigger for this repository, no CI trigger if skipped (only works for Azure Repos)
      branches:
        include: [ custom-branch ]
    name: orgname/reponame

到目前为止我尝试的是下面的错误 - 仅支持 'self'、'none' 或存储库别名。任何帮助将不胜感激。

- checkout: mybitbucketrepo@custom-branch

您需要定义 ref 设置:

When using a repository resource, specify the ref using the ref property. The following example checks out the features/tools/ branch of the designated repository.

resources:
  repositories:
  - repository: MyGitHubRepo
    type: github
    endpoint: MyGitHubServiceConnection
    name: MyGitHubOrgOrUser/MyGitHubRepo
    ref: features/tools

然后

steps:
- checkout: MyGitHubRepo

IT 不支持使用 @,请使用内联引用语法

steps:
 - checkout: self
 - checkout: git://MyProject/MyToolsRepo@features/mytools

通过附加 @<ref>,可以指示代理检查不同的参考。在本例中,假定它是一个名为 features/mytools 的分支。分支也可以使用前缀 refs/heads/ 来明确表示它是一个分支。

其他有效的引用(和类似引用的东西):

  • refs/tags/
  • 提交 ID

详情请看这个link:Multi-checkout: checking out multiple repos

你也可以在资源中定义它,查看我们的官方文档--Checking out a specific ref示例如下:

resources:
  repositories:
  - repository: app
    type: github
    name: org1/repoA
    ref: master
    endpoint: 'GitHub endpoint'
    trigger:
    - master
    - release/*