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

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'

这是怎么呢


当前回答

这实际上是在BitBucket服务器端启用YACC时发生的。YACC是启用的,以便在提交消息中提到JIRA问题名称。所以当你提交任何东西时,至少要在提交消息中保留你的JIRA号码,然后你可以添加自己的消息。

其他回答

你应该看看日志。我只是遇到了同样的错误,并从日志中意识到这是因为我有一个纱线。Lock和package-lock.json

如果你在做Push的时候遇到了git中预接收钩子拒绝的问题。 你可能有以下原因:

可能您在项目路径app_data中的DB备份超出了 Github的100.00 MB限制。 如果在项目中使用的文件不超过10.00MB或任何文件的大小限制,请检查文件的大小。

您可以通过以下步骤解决此问题:

把文件压缩,然后再推 Git push -u origin develop

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

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

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

git reset --soft HEAD~1

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

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

在我的情况下,我有一个新的存储库,推送一个分支('UCA-46',而不是'master'),重新创建它,强制再次推送并得到错误。没有网钩。我执行了@ThiefMaster建议的git pull -rebase,不得不再次rebase,并能够推动分支。但这是一种奇怪而艰难的方式。

然后我看到Git推送错误预接收钩子被拒绝。我发现我的树枝受到了保护。我解除了保护,又可以用力推了。

我使用GitKraken,我们做了一个本地分支,然后我们合并了两个远程分支,然后我们尝试将本地分支推到原点。它不能使用相同的错误消息。

解决方案是创建本地分支,并首先将其推到原点,然后进行合并。