首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >尝试推送时出现Git错误--预接收钩子被拒绝

尝试推送时出现Git错误--预接收钩子被拒绝
EN

Stack Overflow用户
提问于 2011-11-03 03:22:24
回答 27查看 733.3K关注 0票数 303

当我尝试推送我提交的更改时,我得到以下错误...

代码语言:javascript
复制
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'

到底怎么回事?

EN

回答 27

Stack Overflow用户

回答已采纳

发布于 2011-11-03 08:09:20

你应该问问在git@mycogit/cit_pplus.git维护回购的人。

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

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

如果维护者就是您自己,那么看起来您在服务器端的设置就有问题。届时请分享更多信息。

票数 177
EN

Stack Overflow用户

发布于 2011-11-03 08:11:25

我敢打赌,您正在尝试非快进推送,但钩子会阻止它。如果是这种情况,只需在推送之前运行git pull --rebase,以根据最新的代码库重新设置本地更改的基础。

票数 91
EN

Stack Overflow用户

发布于 2016-02-19 11:39:29

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

预接收钩子被拒绝是大文件的结果。基本上验证了推送。

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

代码语言:javascript
复制
git reset --soft HEAD~1

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

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

希望能有所帮助。

票数 84
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7986139

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档