Etienne
Etienne

Reputation: 736

When changing into Rails folder, have rvm pick ruby and gemset?

For my different Rails folders, I would like to have rvm automatically load the correct gemset when running anything from 'bundle install' to doing my 'autotest' or rails console or server. Is this possible? Currently I have to manually do 'rvm use' which is getting a bit tedious as I am working on multiple Rails projects at the same time.

Upvotes: 34

Views: 12799

Answers (7)

Gaurav Balodi
Gaurav Balodi

Reputation: 1

I had the same problem. But, I found I had installed a ruby version globally while installing rvm.

I uninstalled that global version and everything started to work fine with .ruby-version and .ruby-gemset file in project's root directory.

Upvotes: 0

Fangxing
Fangxing

Reputation: 6145

For current RVM version 1.29.1, the recommended way is

rvm --ruby-version use <ruby-version>@<gemset>

Exmaple

rvm --ruby-version use 2.4.0@rails5
cat .ruby-version  # 2.4.0
cat ruby-gemset # rails5

this will generate two file .ruby-version and .ruby-version in your porject directory. This will compatible with other Ruby Versions Managers

Upvotes: 7

Anton Semenichenko
Anton Semenichenko

Reputation: 354

Yaw just create two plain-text files and put into your project folder: .ruby-gemset and .ruby-version

.ruby-gemset should contain only gemset alias name and nothing else

.ruby-version follows the same rules, put your ruby version or alias there

Upvotes: 5

Simonini
Simonini

Reputation: 623

You can also use this in Gemfile

ruby '2.2.0'
ruby-gemset=significa

This way rvm will automatically pick the configured version

Upvotes: 6

dangerousdave
dangerousdave

Reputation: 6418

For current versions of RVM, using two files is best practice:

.ruby-version
.ruby-gemset

http://rvm.io/workflow/projects

Upvotes: 33

picardo
picardo

Reputation: 24896

You can easily do that by placing an .rvmrc file at the base of your project.

Upvotes: 2

Dominic
Dominic

Reputation: 3304

Create a .rvmrc file in your rails directory, and rvm will automatically load it. An example .rvmrc that loads Ruby 1.9.2 and a gemset named "rails3":

.rvmrc

rvm 1.9.2@rails3

You can do a lot more too, described in detail here: https://rvm.io/workflow/rvmrc/

Upvotes: 42

Related Questions