繁体   English   中英

仅当主推来自具有特定名称的分支时才运行 Github 操作

[英]Run Github Action only when a push to main comes from a branch with a certain name

我有一个 Github 操作,当有推送或来自拉取请求的合并时,它从主分支部署我的应用程序:

'on':
  push:
    branches:
      - main
jobs:
  build_and_deploy:

我要完成的是仅在拉取请求来自名称中不包含字符串“nodeploy/”的分支时才运行该操作。

我试过这个:

'on':
  push:
    branches:
      - main
jobs:
  build_and_deploy:
    if: ${{ !startsWith(github.head_ref, 'nodeploy/') }}

但它没有用。

我相信它不起作用,因为github.head_ref的值在这种情况下始终是main的。

有什么解决办法吗?

我找到了解决方案。 正如评论中所建议的,我检查了头部提交中的消息。

'on':
  push:
    branches:
      - main
jobs:
  build_and_deploy:
    if: ${{ !contains(github.event.head_commit.message, 'nodeploy/') }}

现在它做了我想要的。

请注意,如果您更改自动生成的合并消息,它将不起作用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM