无法将提交推送到 master 分支:pre-receive hook denied 错误

时间:2021-07-16 21:34:08

标签: git gitlab push

嗨,我是使用 Git 的新手,我正在 gitlab 上处理我公司的存储库之一。我们是一个小团队,我已经准备好将更改推送到 master 分支,当我尝试这样做时,我在下面收到此错误。

remote: GitLab: You are not allowed to push code to protected branches on this project.
! [remote rejected] HEAD -> master (pre-receive hook declined)

当我尝试推送时,系统不会要求我提供任何身份验证详细信息。我有一个具有以下范围的个人访问令牌和一个我认为大约一个月前正确设置的 SSH 密钥。我不确定这是否是问题所在,而且我很难弄清楚 Git 实际使用的是什么凭据。

enter image description here

但是,我能够创建自己的本地分支(称为 jacobs_branch),将我的更改添加并提交到那里,以便它与我一直在做的事情完全同步,然后将其推送到存储库作为远程分支。但是当我尝试将这个分支合并到 master 时,我得到了同样的错误。下面是我们在 gitlab.com 上的 repo 的图片,其中包含我最新的分支和旧的 master 分支。

enter image description here

那么我无法将更改推送到 master 分支是我的问题,还是某种权限问题?我还读到我可能需要 maintainer 访问权限才能推送到主分支(我可能没有),但我不够熟悉,无法确定。如果我可以提供任何其他信息,或者如果有人知道发生了什么,我将不胜感激!

1 个答案:

答案 0 :(得分:1)

有人设置了阻止您推送到 master 分支的权限

根据不同的供应商有很多方法可以做到这一点,但您需要与拥有存储库的人交谈

这种技术通常用于强制用户向分支发出拉取请求