appveyor 运行 仅在 master 分支上构建操作后

appveyor running after build action only on master branch

我在 AppVeyor 中构建了 repo,它生成了一些包 (.nupkg),然后将这些包推送到 MyGet。当我在 master 上开发时,一切都很顺利,但是当我在另一个分支上时,我希望它构建而不是推送包,我已经阅读了 some documentation on branches 并且似乎我可以为 master 和另一个配置对于其他分支,但是这意味着复制我的所有配置,除了实际推送到 MyGet 的行。我的 appveyor.yml 文件看起来像这样:

version: 0.0.{version}

before_build:
  - do some stuff (I have about 5 of these)
  - ...

build_script:
  - cmd: build.cmd

after_build:
  - push to myGet

如果在 master 分支上,我只想 运行 after_build 命令。

有没有办法 运行 某些命令取决于它们的分支而不重写该分支(或分支类型或其他)的整个配置?

您可以使用 APPVEYOR_REPO_BRANCH 环境变量。请试试这个:

after_build:
  - IF %APPVEYOR_REPO_BRANCH%==master push to myGet

伊利亚。