我正在尝试像往常一样使用以下命令将我的RoR 3.1.0.beta1项目从我的Git存储库推送到Heroku:
git push heroku master
但是我收到以下错误:
-----> Heroku receiving push
-----> Rails app detected
-----> Detected Rails is not set to serve static_assets
Installing rails3_serve_static_assets... done
-----> Configure Rails 3 to disable x-sendfile
Installing rails3_disable_x_sendfile... done
-----> Configure Rails to log to stdout
Installing rails_log_stdout... done
-----> Gemfile detected, running Bundler version 1.0.7
Unresolved dependencies detected; Installing...
Using --without development:test
Fetching source index for http://rubygems.org/
Could not find sprockets-2.0.0.beta.2 in any of the sources
FAILED: http://devcenter.heroku.com/articles/bundler
! Heroku push rejected, failed to install gems via Bundler
我的Gemfile有这一行:
gem 'sprockets', '2.0.0.beta.2'
Sprockets版本2.0.0.beta.2的存在是因为我一直在拉不同的版本,包括这个版本。这里有什么我想念的吗?
由于
答案 0 :(得分:1)
看起来此版本已从Rubygems中提取,仅列出了beta.12和beta.13:
http://rubygems.org/gems/sprockets
所以你需要从回购中获得specific beta.2 branch,正如Thariq建议的那样。
但是,我可能会选择在rubygems上列出的其中一个版本 - 必须有一个很好的理由说明它们被拉出来了;)
答案 1 :(得分:0)
因为:
,它不在rubygems上
您需要弄清楚从哪个来源获取gem并将其添加到gem文件的顶部,如下所示:
source 'http://rubygems.org'
gem 'rails', '3.0.5'
gem 'sqlite3'
gem 'sprockets', '2.0.0.beta.2'
gem "sprockets", "~> 1.0.2"
是关于红宝石的宝石。但是,您需要找到专门托管您的版本的位置,例如http://mysite.org
将其添加到gemfile
的顶部。
答案 2 :(得分:0)
据推测,你一直在从Sprockets Git Repo开始。你需要告诉你的Gemfile你在哪里得到一个不在rubygems中的gem,所以在这种情况下你会使用:
gem 'sprockets', '2.0.0.beta.2', :git => 'git://github.com/sstephenson/sprockets.git'