我正在实现一个工作流程,其中一项工作是增加 package.json 版本。 为此,我使用 GH 操作。
一个问题是新版本应该在受保护的分支中更新
development
。
要绕过它,我将 1 个用户 (
test-user
) 添加到 Allow specified actors to bypass required pull requests
github 操作在写入 package.json 之前接受用户名和电子邮件进行配置 即使允许该用户绕过并将名称和电子邮件传递给操作后,我也得到:
Changes must be made through a pull request. 5 of 5 required status checks are expected. You're not authorized to push to this branch.
我错过了什么?
我相信您还必须添加一个标识同一用户的访问令牌,并在结账操作中使用它,例如
- uses: actions/checkout@v2
with:
fetch-depth: 0
token: ${{ secrets.BOT_ACCESS_TOKEN }}
我刚刚遇到了同样的问题,只要令牌具有“对代码和拉取请求的读写访问权限”,上面的内容就可以解决该问题。我通过以用户身份登录(方便地这是我自己的用户,而不是单独的用户)并在 https://github.com/settings/tokens?type=beta 创建一个令牌来完成此操作,然后将其粘贴到存储库设置上的操作秘密。
我认为只需通过
git config user.name ...
和 git config user.email ...
识别用户就足够了,但我想访问令牌要求意味着可以像用户一样对提交进行签名?也许 GitHub 只接受签名的提交或绕过保护的操作。
希望我能找到一些解释这一点的 GitHub 文档...