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

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'

这是怎么呢


当前回答

! [远程拒绝]master -> master(预接收钩子拒绝)

我花了2天时间在这个bug上! 经过大量的研究,我终于找到了一个解决方案。

Heroku配置:set USE_NPM_INSTALL=false 在Heroku上配置了纱线构建包 确定纱线。锁文件不在你的。gitignore文件

它会起作用的!

其他回答

有时,因为您正在推送的分支已经受到保护,所以您可以要求存储库的维护者更改保护状态。在git-lab,你可以在

Settings > Repository > Protected Branches .

:)

对我来说,一切都很顺利,直到Bitbucket今天(2020年4月21日)自动更改了他们的政策。这恰好与今天推出的新功能“工作区”(Workspaces)相一致,所以我怀疑它与此有关。

解决方法:我(作为管理员)按照说明在用户界面中添加电子邮件地址到用户(您正在使用的电子邮件可以在git config——list中找到)

如果在一个公司的gitlab/ github中,你试图将更改推到一个分支/master, Pre-hook可能意味着你错过了一些输入到提交消息中的参数。

在我的情况下,随着消息,我需要在提交文件中添加bug id, bug url和审批者,然后推送到分支并放置合并请求。

希望这对你有所帮助,当你写提交信息的时候,问问你的导师/朋友提交信息中的要求。

您应该在git@mycogit/cit_pplus.git上询问维护该回购的人员。

你的提交被该repo的pre-receive钩子拒绝了(这是一个用户可配置的脚本,用于分析传入的提交,并决定它们是否足够好,可以接受到repo中)。

让那个人更新钩子也是个好主意,这样它就会打印出拒绝的原因。

如果维护者是您自己,那么您在服务器端的设置似乎遇到了问题。到时请分享更多信息。

在我的例子中,这是因为我不小心在未提交的推送中添加了一个巨大的文件,无论我之后做什么拉或重置或rm,我都无法摆脱它。

我的肮脏解决方案,但可行的解决方案是重命名当前目录,重新克隆目录到本地,并手动反映更改到重新克隆的本地目录…

这听起来不太好,但确实有效……