0

我有一个 Rails 3.2.3 应用程序,我在github.Today 上托管。今天我将它部署在 Heroku 上。

在部署期间,我对Gemfile.

  • 运行rake assets:precompile生成 /public/assets 文件夹。

  • 我必须添加这些更改并将其提交到本地存储库,以便通过运行推送到 herokugit push heroku master

部署很好,但现在我的开发环境是这样的:

# On branch master
# Your branch is ahead of 'origin/master' by 2 commits.

这些是我为部署在 heroku(运行预编译和其他一些东西)上所做的更改,我不想在我的存储库中存在这些更改github。我该如何继续我的开发(能够继续推进github)并不断更新变化heroku)?

澄清:public/assets已生成并应添加到本地 repo 以推送到 heroku。所以我不能把它放在 .gitignore 但我不希望它被推送到 github 上。最佳做法是什么?

4

1 回答 1

1

我不确定你为什么要rake assets:precompile在开发中运行。你在调试什么吗?一般来说,最好不要将已编译的资产提交到您的仓库,因为它们是生成的内容。

在 Heroku 上,您可以选择在 slug 编译期间预编译您的资产。尽管部署速度稍慢,但这使得回购更干净。只需删除public/assets,让 Heroku 知道该怎么做。另外,请确保将以下行添加到config/application.rb

config.assets.initialize_on_precompile = false

https://devcenter.heroku.com/articles/rails3x-asset-pipeline-cedar

于 2012-07-01T16:42:07.520 回答