Question

I am currently running the following on OSX 10.6.8 and am trying to understand gemsets and gems.

Ruby 1.9.3-p194

Rails 3.2.8

RVM 1.15.6

When I look in .rvm/gems/ I see several gemset directories. Inside each one there is a gems directory. Now, whats the relationship between the non-'@' gemset and the @global gemset?

Was it helpful?

Solution

From the documentation:

Interpreter global gemsets

RVM provides (>= 0.1.8) a @global gemset per ruby interpreter.

Gems you install to the @global gemset for a given ruby are available to all other gemsets you create in association with that ruby.

This is a good way to allow all of your projects to share the same installed gem for a specific ruby interpreter installation.

To expand on this, the gemset without the @global is the default gemset for that Ruby version. It is essentially a gemset with no name. The @global gemset, however, is special for the reasons outlined in the docs above.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top