我是ROR和heroku的完全初学者。目前我正在尝试使用bitbucket中的git创建一个应用程序,我的gemfile版本(2.2.3)与我的ruby on rails版本2.3.1不同。
我可以采取哪些步骤来确保我的gemfile可以更改?
gemfile中的这种不匹配导致了我的" git push heroku master"失败并出现以下错误。
安装mime-types(3.0)时发生错误,而Bundler则不能 远程:继续
。非常感谢你! (:
答案 0 :(得分:1)
Ruby 2.3很酷 - 像safe navigation operator这样的东西,所以我建议安装它,但如果你不想 -
在您的Gemfile或.ruby-version
文件中,您可能会有一行显示ruby 2.3.1
。暂时将其更改为已安装的版本,2.2.3。
如果您想跳过标记为仅属于bundle
组的宝石,请运行bundle --without production
,或者production
。例如,如果您没有在本地安装postgres。
然后将您的Gemfile或.ruby-version
切换回2.3.1。提交并尝试推送。
这取得了什么成果?它将ruby版本固定为2.3 for heroku,但使用您安装的版本安装Gemfile.lock
。就我所知,Heroku只需要Gemfile.lock
用于开发宝石。
顺便说一句,我假设您使用 ruby 版本2.2.3而不是 Rails 版本。当前的Rails版本是4.x.x或5.x.x.要运行Rails 2.x.x,您可能需要降级到Ruby 1.8.7或其他东西。