如何从master以外的分支运行GitHub操作?

如何从master以外的分支运行GitHub操作?,github,github-actions,Github,Github Actions,我在GitHub中有一个回购协议,我想创建一个动作来构建Docker imagen并将其推送到DockerHub。我知道怎么做,但是:如果我在主GitHub之外的分支中创建操作,那么它不会运行 这是一个已知的问题() 有什么解决方法吗?根据官方GitHub操作文档(): 执行以下步骤以触发工作流运行: 存储库中发生了一个事件,由此产生的事件webhook具有关联的commit SHA和Git ref 将在存储库中的.github/workflows目录中搜索关联的commit SHA或Git

我在GitHub中有一个回购协议,我想创建一个动作来构建Docker imagen并将其推送到DockerHub。我知道怎么做,但是:如果我在主GitHub之外的分支中创建操作,那么它不会运行

这是一个已知的问题()


有什么解决方法吗?

根据官方GitHub操作文档():

执行以下步骤以触发工作流运行:

  • 存储库中发生了一个事件,由此产生的事件webhook具有关联的commit SHA和Git ref

  • 将在存储库中的.github/workflows目录中搜索关联的commit SHA或Git ref中的工作流文件。工作流文件必须存在于要考虑的commit SHA或Git ref中。


    例如,如果事件发生在特定存储库分支上,则工作流文件必须存在于该分支上的存储库中

  • 将检查该提交SHA和Git ref的工作流文件,并为具有与触发事件匹配的on:值的任何工作流触发新的工作流运行。

    工作流在触发事件的同一提交SHA和Git ref上运行于存储库的代码上。当工作流运行时,GitHub在runner环境中设置GitHub_SHA(提交SHA)和GitHub_REF(Git REF)环境变量。有关更多信息,请参阅“使用环境变量”

  • 因此,为了测试工作流,我们需要在创建的分支中执行git操作(即do
    push
    )。

    什么对我有效(通过尝试和错误)

  • 在.github/workflows文件夹中创建一个空YAML文件
  • 创建PR以将该文件移动到您的分支机构
  • 在您的分支中,您现在可以进行必要的编辑,以启动并运行GH操作。注意:在更新YAML之后,您还需要进行更改 这实际上触发了工作流(我使用下面的触发器,注意没有
    '.github'
    路径触发器)

  • “如果事件发生在特定存储库分支上,则工作流文件必须存在于该分支上的存储库中。”我正在查找的,谢谢
    on:
      push:
        paths:
          - 'path/to/your/code/**'