rbenv ruby​​ on rails global vs local vs shell

时间:2016-05-02 00:19:49

标签: ruby-on-rails ruby rbenv

// Start background info.

我只想在rails上安装ruby进行开发(OSX El Capitan)。

痛点:

  

错误:执行gem时...(Gem :: FilePermissionError)   您没有/Library/Ruby/Gems/2.0.0目录的写权限。

解决方案:已安装 rbenv 来管理/修改单独的ruby。

rbenv目前正在使用我的系统ruby - 所以我通过rbenv install下载了相同的版本。

// end background info.

实际问题:我是否将rbenv本地,全局或shell ruby​​版本设置为新下载的版本?

2 个答案:

答案 0 :(得分:2)

rbenv通常rbenv global 2.3.0 为你做了肮脏的工作if loaded correctly,但是如果你需要更改全局设置,你可以随时更新它:

rbenv versions

然后你可以检查是否正确应用了:

*

ruby表示当前有效ruby -v 。测试:

rbenv

这应该是你要求的版本。

使用{{1}}比使用系统ruby要好得多,所以我希望它对您有用。

答案 1 :(得分:1)

根据Github中的rbenv官方文档,它们之间的区别如下:

# Sets a local application-specific Ruby version
# by writing the version name to a `.ruby-version`.
$ rbenv local <version>

# Sets the global version of Ruby to be used in all shells
# by writing the version name to the `~/.rbenv/version` file
$ rbenv global <version>

# Sets a shell-specific Ruby version by setting the
# RBENV_VERSION environment variable in your shell.
# This for temporary use and will only work during the terminal session
$ rbenv shell <version>

请注意,您的终端会话将不再遵守任何.ruby版本文件。您需要运行rbenv shell --unset才能再次启用自动切换。

快乐编码:)