【问题标题】:In GitHub how can I grant an app permissions to commit to a branch with protections?在 GitHub 中,如何授予应用程序权限以提交到具有保护的分支?
【发布时间】:2021-03-28 13:57:20
【问题描述】:

我有一个应用程序,我想在 CI 构建期间增加版本。我正在尝试使用应用程序凭据将版本推回,但出现以下错误:

+ git push origin HEAD:master
remote: error: GH006: Protected branch update failed for refs/heads/master.        
remote: error: At least 1 approving review is required by reviewers with write access.

现在,当我使用自己的凭据执行此操作时,它可以工作,因为我是 repo 中的管理员,但是尽管有通常的分支保护,我如何授予对应用程序的访问权限以推送到 master?

【问题讨论】:

  • 我的解决方法是使用用户凭据,但我更愿意将其作为应用程序,似乎 github 对应用程序和提交权限没有足够精细的控制。

标签: jenkins github git-push github-app


【解决方案1】:

你不能。分支权限用于阻止任何人推送到分支。

在我的设置中,我们也可以防止管理员推送,这更有趣。 我们用两个服务帐户解决了这个问题,在 CI 代码中,我们使用一个服务帐户令牌提出 PR,然后立即其他帐户令牌批准并合并它

这不是一个很好的解决方法,但在 GitHub 提供更细粒度的权限之前,这是我们所能做的一切

【讨论】:

  • 我害怕这个。这也是我的结论。不过,这两个用户的技巧非常聪明。
猜你喜欢
  • 1970-01-01
  • 2020-04-23
  • 2012-04-29
  • 2016-10-21
  • 2023-03-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多