当改成Rails文件夹时,有rvm选择ruby和gemset吗?

Eti*_*nne 31 ruby-on-rails rvm

对于我不同的Rails文件夹,我想让rvm在运行"bundle install"到执行'autotest'或rails console或server的任何东西时自动加载正确的gemset.这可能吗?目前我必须手动执行'rvm use',因为我正在同时处理多个Rails项目,这有点单调乏味.

Dom*_*nic 41

.rvmrc在rails目录中创建一个文件,rvm将自动加载它..rvmrc加载Ruby 1.9.2和名为"rails3"的gemset 的示例:

.rvmrc

rvm 1.9.2@rails3
Run Code Online (Sandbox Code Playgroud)

你可以做更多的事情,详见下文:https://rvm.io/workflow/rvmrc/


dan*_*ave 28

对于当前版本的RVM,使用两个文件是最佳实践:

.ruby-version
.ruby-gemset
Run Code Online (Sandbox Code Playgroud)

http://rvm.io/workflow/projects

  • 这是正确的,这个想法是.rvmrc文件是特定于RVM的,而这些文件是版本管理器不可知的.我不确定chruby/rbenv是否支持这两种方式. (2认同)

fan*_*ing 7

对于当前的RVM版本1.29.1,推荐的方式是

rvm --ruby-version use <ruby-version>@<gemset>
Run Code Online (Sandbox Code Playgroud)

示例

rvm --ruby-version use 2.4.0@rails5
cat .ruby-version  # 2.4.0
cat ruby-gemset # rails5
Run Code Online (Sandbox Code Playgroud)

这将在您的项目目录中生成两个文件.ruby-version和。.ruby-version这将与其他 Ruby 版本管理器兼容


Sim*_*ini 5

您也可以在Gemfile中使用它

ruby '2.2.0'
ruby-gemset=significa
Run Code Online (Sandbox Code Playgroud)

这样rvm会自动选择配置的版本


Ant*_*nko 5

偏航仅创建两个纯文本文件并将其放入您的项目文件夹: .ruby-gemset.ruby-version

.ruby-gemset应该只包含gemset别名

.ruby-version遵循相同的规则,将您的ruby版本或别名放在此处