I use RVM, the Ruby Version Manager to specify a Ruby version and a set of gems for each of my Rails projects.
I have a .rvmrc
file to automatically sel
Quick and easy way to switch from .rvmrc to .ruby-version + .ruby-gemset
rvm rvmrc to .ruby-version
You can try both.
Go to the root of your project, create a .rvmrc file (touch .rvmrc
), then edit
rvm use 2.0.0-p451@your_gemset
(your ruby version and gemset name).
After save this file, you can type this command:
cd ../your_project
(you're in your_project directory), and the script in .rvmrc will execute.
The RVM recommend to use ruby-version. You can run this command to switch from .rvmrc to .ruby-version
rvm rvmrc to .ruby-version
What it does is create 2 files name .ruby-version, and .ruby-gemset and add this line
ruby-2.0.0-p451
in .ruby-version
your_gemset
in .ruby-gemset
You can try to do it manually if you want :)
Install rvm using:
\curl -sSL https://get.rvm.io | bash -s stable --rails
Install different ruby versions:
rvm install 1.8.7
rvm install 1.9.2
Switch to specific ruby version. For example, 1.8.7:
rvm use 1.8.7
To create a gemse:
rvm gemset create project_gemset
And to use a gemset:
rvm gemset use project_gemset
If your .rvmrc
file contains custom shell code, continue using .rvmrc
as it allows you to include any shell code.
If your only aim is to switch Ruby versions, then use .ruby-version
which is supported by other Ruby version switchers such as rbenv or chruby. This file also does not require trusting as it is just the name of a Ruby version and will not be executed in any way.
If you use .ruby-version
you can include @gemset
in the file but this will not be compatible with other switchers. To maintain compatibility use the gemset name in a separate file .ruby-gemset
which is ignored by other tools (it works only together with .ruby-version
).
For example, if you have a simple .rvmrc
:
rvm use 1.9.3@my-app
It can be transformed to .ruby-version
:
1.9.3
And .ruby-gemset
:
my-app
Be sure to remove the .rvmrc
file as it takes precedence over any other project configuration files:
rm .rvmrc
If you want create the .ruby-version
and .ruby-gemset
file in a short way you can use the commands like this:
rvm use 2.1.1@nancy --create
rvm --create --ruby-version 2.1.1@nancy