嗯,这很奇怪。我正在使用Github保护规则来强制执行拉取请求并为每次推送触发TravisCI。但是,由于需要连续翻译,因此我需要一个能够在不发出请求请求的情况下进行推送并且避免TravisCI状态检查的用户(为此,我使用[ci skip])。该用户包括在Github在分支保护规则中提供的白名单中。自上周以来,它运行良好,突然,当我尝试向该用户推送时,我收到了它:
remote: Resolving deltas: 100% (5/5), completed with 5 local objects.
remote: error: GH006: Protected branch update failed for refs/heads/master.
remote: error: Required status check "Travis CI - Pull Request" is expected. At least 1 approving review is required by reviewers with write access.
To https://github.com/*****
! [remote rejected] master -> master (protected branch hook declined)
error: failed to push some refs to 'https://*****'
这很奇怪,因为它一直可以使用到现在...并且用户有权进行推送而不发出请求,并且它通过提交消息跳过了Travis,所以我不明白为什么github询问我有关状态的信息检查和批准...
答案 0 :(得分:1)
我最近遇到的问题:
remote: error: GH006: Protected branch update failed for refs/heads/master.
remote: error: Cannot force-push to this protected branch
To https://github.com/org/project.git
! [remote rejected] master -> master (protected branch hook declined)
error: failed to push some refs to 'https://github.com/org/project.git
因为我是管理员/所有者,所以我可以去做以下事情,这帮助我解决了push
问题。
脚步 :
->设置
->分支
->勾选Allow force pushes
Permit force pushes for all users with push access.
这样就可以了。
答案 1 :(得分:1)
答案 2 :(得分:0)
我解决了它,最终为用户提供了管理员访问权限,而不仅仅是写访问权限。现在,它可以避免批准和状态检查。但是我不明白为什么仅在保护分支规则的白名单中为什么不起作用...以前起作用了,好像GitHub做了一些更改...
答案 3 :(得分:0)
就我而言,我先做了Pull (Rebase)
,然后我做了Push
答案 4 :(得分:0)
在我的情况下,分支保护规则未正确执行。删除规则,然后在GitHub中重新创建该规则即可解决此问题。
答案 5 :(得分:-1)
就我而言,以某种方式为回购创建了安全规则。此规则仅允许管理员推送。我删除了该规则,事情开始按预期工作。
Repo > Settings > Branches > Branch protection rules [Delete]