【发布时间】:2013-05-30 16:45:45
【问题描述】:
我在 Heroku 上运行 Rails 3.2 应用程序,因此需要使用资产管道。
关于 Rails 资产管道的一件事让我很困惑一段时间是这个小实验的结果:
git rm -r public/assets
git commit -m "Nuke all generated assets"
RAILS_ENV=production bundle exec rake assets:precompile
git add .
RAILS_ENV=production bundle exec rake assets:precompile
具体来说,如果我检查分阶段和非分阶段更改之间的差异,我发现第二个资产预编译已重新生成/重新定义/重新优化了我所有的 CSS 和 JS。
当我在资产编译之间没有进行任何更改时,为什么会发生这种情况?
显然,当前时间戳以某种方式涉及,但是为什么是这样,当 - 再次 - 我什么都没改变?
最后,有没有办法改变资产预编译,使得 CSS 和 JS 资产只有在自上次预编译后发生更改时才会重新生成?
【问题讨论】:
标签: ruby-on-rails asset-pipeline