11

Github 操作仍处于测试阶段且相当新,但我希望有人能提供帮助。我认为可以在主分支和拉取请求上运行 github 操作,如下所示:

on:
  pull_request
  push:
    branches: master

但这不起作用,并引发错误

yaml:第 4 行:在此上下文中不允许映射值

. 相反,我只能让它像这样工作:

on: [pull_request, push]

我究竟做错了什么?谢谢。

4

2 回答 2

10

我认为您只是在pull_request. 这对我有用。

on:
  pull_request:
  push:
    branches: master
jobs:
  test:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v1
      - name: Test
        run: echo "done"
于 2019-10-02T08:25:22.057 回答
1

解释

每个触发器都必须定义为定义对象的属性。

每个对象定义默认设置的覆盖。

您可以使用 3 种可能的语法:

最小语法:

on:
  pull_request:
  push: { branches: [master] }

显式语法:

on:
  pull_request: {}
  push: { branches: [master] }

可扩展语法:

on:
  pull_request:
  push: 
    branches: 
      - master

当使用版本控制系统时,后者可能最有用,因为差异查看器总是可以轻松区分*不同的行。

*尽管现代差异查看器也可以轻松区分内联差异。

于 2019-12-07T14:37:22.767 回答