我试图将项目推送到GitLab的存储库中,但是发生了错误。
To https://gitlab.com/codersclan-interviews-frontend/codersclan-david-rose.git
! [remote rejected] test -> test (pre-receive hook declined)
error: failed to push some refs to 'https://gitlab.com/codersclan-interviews-frontend/codersclan-david-rose.git'
我该如何解决?
Git存储库不是我创建的,而是由客户端创建的。 然后他要求我将代码推送到我自己创建的分支中,并在完成后通知他。
要执行此任务,我确实喜欢关注
git clone https://gitlab.com/codersclan-interviews-frontend/codersclan-david-rose.git
git checkout -b 'test'
git branch test
add project
git add .
git commit -m "..."
git push origin test
我期望成功的推送结果,但是发生了以上错误。
答案 0 :(得分:2)
如何解决[
pre-receive hook declined
形式的错误?[The Git存储库不是我创建的,它是由客户端创建的。
通常,您 无法解决此问题。只有存储库的所有者才能执行此操作,因为预接收钩子是他们的控制权,而您却没有。
预接收钩子基本上是验证程序,是推送请求的一种警察。他-如果我们可以将这个钩子人化化-以他所告知的任何方式检查您的推送请求。通常,他会查看您建议添加到存储库中的每个提交,但是没有任何信息或提示要告知此预接收挂钩执行哪种检查, we 阅读您问题的人-无法猜测他可能正在进行的检查。就此而言,您也无法做到:您只能知道他说了什么。
所以:他有告诉你什么吗?他是否说过:“我不喜欢你的事情,因为_____”? (填写空白),请注意该声明。但是,如果他什么都没告诉你,那我们也不会。那不是你的错:任何编写此类自定义GitLab钩子的人必须告诉用户为什么他们拒绝提交,否则每个人都将陷入困境。
另请参见https://docs.gitlab.com/ee/administration/custom_hooks.html(但您必须是存储库的管理员才能解决此问题)。
答案 1 :(得分:0)
这也可能由于受保护的分支名称而发生。尝试将您的分支名称更改为远程存储库上不受保护的名称。修补程序、开发等可能是受保护的名称。