Heroku:编译的Slug尺寸太大

sci*_*fic 4 ruby-on-rails heroku

我已经花了半天时间尝试调试Heroku错误,因为slug编译错误导致我无法将代码推送到我的登台服务器:

Compiled slug size: 320.5MB is too large (max is 300MB).
Run Code Online (Sandbox Code Playgroud)

我已将所有资产移至AWS3并使用以下信息创建了一个.slugignore文件:

*.psd
*.pdf
test
spec
features
doc
public
Run Code Online (Sandbox Code Playgroud)

我可以使用哪些其他策略?最奇怪的是,据我所知,代码与生产服务器相同,推送到生产服务器时没有任何错误.

Luk*_*und 12

在你添加.slugignore文件之前,你可能有一些大文件添加了git repo,现在它们在slug缓存中或作为git refs.在混帐回购插件具有命令来解决这些问题:

$ heroku repo:gc -a appname
Run Code Online (Sandbox Code Playgroud)

将在你的回购上运行git gc --aggressive.

$ heroku repo:purge_cache -a appname
Run Code Online (Sandbox Code Playgroud)

这将删除构建缓存,然后您可能应该运行以重建应用程序.

$ heroku repo:rebuild -a appname
Run Code Online (Sandbox Code Playgroud)

  • repo:rebuild 现在似乎消失了。“重置”虽然存在 (3认同)
  • 如果您尚未安装该插件,请务必先运行 `heroku plugins:install heroku-repo` :) (3认同)

ill*_*ist 6

这对我有用

$ heroku repo:gc -a appname
Run Code Online (Sandbox Code Playgroud)

将在您的存储库上运行 git gc --aggressive。

$ heroku repo:purge_cache -a appname
Run Code Online (Sandbox Code Playgroud)

然后我手动将代码推送到 heroku

$ git push heroku-prod master
Run Code Online (Sandbox Code Playgroud)