当我尝试推动我已经提交的更改时,我得到以下错误…

git.exe push -v --progress  "origin" iteration1:iteration1

remote: *********************************************************************
To ssh://git@mycogit/cit_pplus.git
! [remote rejected] iteration1 -> iteration1 (pre-receive hook declined)
error: failed to push some refs to 'ssh://git@mycogit/cit_pplus.git'

这是怎么呢


当前回答

文件大小很重要。单个文件的限制为~120MB。在我的例子中,使用Visual Studio的.gitignore列出了该文件,但该文件仍然被提交。当使用git cli时,我们可以获得关于错误的更多详细信息。

预收勾谢绝的原因是档案大。基本上是在验证推送。

为了解决这个问题,我删除了最后一次提交使用:

git reset --soft HEAD~1

然后,我从提交中排除了该文件。

注意: 使用HEAD~N返回到前N次提交。(即3、4) 始终使用——软开关来维护文件夹中的更改

其他回答

在我的例子中,我收到这条消息是因为这个分支在GitLab中被标记为“受保护”。

对我来说,在远程git服务器上授权解决了这个问题。

这可能是因为您没有将提交推到master等分支的访问权限。您可以要求维护者赋予您推送提交的权限。

这是一个相当老的问题,已经有很多答案了。但我想分享的解决方案,为我工作时与bitbucket(没有管理权限)。我的大多数同事(除了一个人)都没有遇到任何问题。我们俩突然不能再推到精确的分支了(我不知道真正的原因)。 解决方案是:

删除与有问题分支相关的现有拉请求, 删除服务器端的分支, 从本地重新推到远程回购,然后, 再次创建拉取请求。

我得到了同样的错误![远程拒绝]…(预收勾谢绝)今天。

这是由Bitbucket出现问题引起的。因此,请确保Git Remote已启动并正在运行。

阻止我推进的问题是: https://bitbucket.status.atlassian.com/incidents/r8kyb5w606g5