在推送到Heroku之前自动预编译资产

Mik*_*ike 9 ruby rake ruby-on-rails heroku

在推送到Heroku之前,是否可以在Rails应用程序中自动预编译我的资产?我总是忘记这样做,所以当我输入时git push heroku master,它会首先运行rake assets:precompile ; git commit add . ; git commit -a -m "Precompile.",或者那种效果会很好.

有没有人实现这样的解决方案?可能没有钩子?虽然我怀疑这是唯一的方法.

Mik*_*ike 15

我终于想通了.我确实在Cedar堆栈上.问题是我已将我的public目录检入Git,当我推送到Heroku时,它意识到public存在,因此假设我预编译.运行git rm -r public并添加public/**到我.gitignore,然后推送,修复问题.


dwh*_*len 8

听起来你可能不会在Heroku的Cedar Stack上?如果您正在使用资产管道(Rails -v> = 3.1),则cedar提供三种编译资产的选项.

来自文档:

如果您尚未在本地编译资产,我们将尝试assets:precompile在slug编译期间运行 任务.