Git推送失败,预接收挂钩被拒绝

时间:2019-03-27 16:15:44

标签: git gitlab

从我的起源开始,我在机器上克隆了2个本地存储库。第一个存储库工作正常,但是第二个存储库不允许我执行任何推送。失败并显示:

 ! [remote rejected]       DF-abc -> DF-abc (pre-receive hook declined)
error: failed to push some refs to 'git@gitlab.abc.net:myusername/PR.git'

我尝试了-f(强制推送)

git push -v --progress "origin" DF-abc:DF-abc

2 个答案:

答案 0 :(得分:3)

当您的Git报告“预接收钩被拒绝”时,表示他们的 Git运行了他们自己设计的程序-可能是shell脚本,但也可能是Python脚本或其他任何脚本程序,并且该程序告诉他们的 Git不接受推送。

无论这是什么程序,我都称它为“预接收脚本”,它应该告诉您为什么它不喜欢您和/或您的提交以及应该做些什么来使其像您和/或您的提交一样。如果它没有告诉您原因,那么,我们也不能。只有控制此脚本的人才能对此进行任何操作。

如果您控制计算机gitlab.abc.net,则应登录该计算机并修复您的预接收脚本。否则,您实际上不能修复此问题:您必须掌握控制计算机的任何人(并因此控制此脚本),并让他们解决问题。请注意,此修复过程分为两部分:

  • 告诉您最终需要做些什么,以使脚本像您和/或提交一样;和
  • 修复脚本,以便 it 告诉您这一点。

执行后者将实现前者,尽管您必须再次尝试(这一次从脚本中获得输出 ,该脚本告诉您为什么它不喜欢您,以及您可以做什么做到这一点)。

答案 1 :(得分:0)

这是现有GitLAb中的错误。通过安装GITLab 11.8可以解决此问题

以下是GIT实验室开发团队的实际详细信息:

Gitlab问题:https://gitlab.com/gitlab-org/gitlab-ce/issues/57067 Gitlab合并请求:https://gitlab.com/gitlab-org/gitlab-ee/merge_requests/9569