git,Heroku:预先接收挂钩拒绝

wul*_*ong 22 ruby git rack heroku

我正在设置git存储库并尝试将其链接到Heroku.当我运行命令

git push heroku master
Run Code Online (Sandbox Code Playgroud)

我收到

Counting objects: 7, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (5/5), done.
Writing objects: 100% (7/7), 714 bytes, done.
Total 7 (delta 1), reused 0 (delta 0)

-----> Heroku receiving push

 !     Heroku push rejected due to an unrecognized error.
 !     We've been notified, see http://support.heroku.com if the problem persists.


To git@heroku.com:morning-stream-3712.git
 ! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'git@heroku.com:morning-stream-3712.git'
Run Code Online (Sandbox Code Playgroud)

我不太确定其他什么信息会有什么帮助,什么会使水变得混乱,所以我现在就把它留在这里.任何将我的应用程序推送到Heroku的帮助将不胜感激.谢谢.

man*_*lds 13

确保你正在推送一个包含适当支持的应用程序(Rails,Django等)的repo,而你不仅仅是推送一些随机的repo来测试它.

Heroku中的新手:将我的应用程序推送到Heroku时出错

如果情况并非如此,并且您正在推动您认为有效的应用程序,请联系Heroku支持,他们将为您解决此问题.

  • 谢谢!需要“package.json”以便heroku知道它是一个节点应用程序。 (2认同)

小智 12

删除 package-lock.json 为我解决了这个问题


小智 9

确保您使用的是 npm 或 yarn.lock 文件-

找到两个不同的锁文件:package-lock.json 和yarn.lock npm 和yarn 都为这个应用程序创建了锁文件,但只有一个可以用来安装依赖项。

删除 yarn.lock 并将代码再次推送到 git 后,我​​的问题解决了。


小智 8

首先,禁用collectstatic:

heroku config:set DISABLE_COLLECTSTATIC=1
Run Code Online (Sandbox Code Playgroud)

然后运行:

git push heroku master
Run Code Online (Sandbox Code Playgroud)

有关更多详细信息和完整步骤,请查看此处


小智 5

我遇到了同样的问题:

! [remote rejected] vX.X.XX -> master (pre-receive hook declined) 
error: failed to push some refs to 'git@heroku.com:[application-name]'
Run Code Online (Sandbox Code Playgroud)

我意识到我的 heroku 应用程序堆栈是“cedar-10”,从 2014 年4 月 11 日起被弃用,从 2015 年4 月 11 日起禁用(Cedar-14 现在普遍可用)。

解决方案是按照指南升级 heroku 应用程序堆栈:

将生产应用程序升级到 Cedar-14