2014-03-24 31 views
0

我正在关注Michael Hartl的R-o-R教程。遇到问题后,我得到了关于如何从github抓取Hartl的参考代码的好建议,我已经完成了。更改ruby版本会禁用rails和bundler

但是,当按照他的指示获取在tmp目录中设置的参考代码时,我可以使用rbenv 2.1.1版,在这种情况下,我会与gem文件发生冲突,或者使用Ruby版本2.0。 0-p451与gem文件一样,在这种情况下,bundler和rails都不会运行。我得到以下(例如) -

Dans-MacBook-Air:sample_app_rails_4 dan$ rails 

Your Ruby version is 2.1.1, but your Gemfile specified 2.0.0 

Dans-MacBook-Air:sample_app_rails_4 dan$ rbenv local 2.0.0-p451 
Dans-MacBook-Air:sample_app_rails_4 dan$ rbenv rehash 
Dans-MacBook-Air:sample_app_rails_4 dan$ bundler install 

rbenv: bundler: command not found 

The `bundler' command exists in these Ruby versions: 
    2.1.1 

Dans-MacBook-Air:sample_app_rails_4 dan$ 

我可以在Gemfile中改变红宝石版本,但我想追查另一个bug,所以我想准确复制原始。

感谢您阅读本文 - 任何想法?当我安装rails等时,我正在使用Ruby 2.1.1 - 这是否导致了问题?

+0

您需要为该版本的ruby再次安装rails,因为每个ruby都有自己的目录和gem路径。实际上,当您在ruby版本上安装gem时,它们会被存储在该特定版本下。如果您发现自己经常更改版本,则可以使用[rbenv-gemset](https://github.com/jf/rbenv-gemset)来管理gemsets。但我个人的偏好是RVM。 –

回答

1

每个版本的ruby都有自己的gemset。您必须为每个版本的Ruby再次安装捆绑器。

+0

我想这意味着再次安装rubygems? - 可以为自己回答这个问题,不,你不需要再次安装rubygems。 – RADan