Wednesday, April 3, 2013

Use Bundler Instead of RVM Gemsets


Wayne Seguin and Michal Papis' rvm has several useful features for ruby developers which include managing multiple versions of ruby and controlling gem visibility on a per folder/project basis.  The latter of these two features is also entirely handled by bundler in a significantly better manner.  Bundler completely supplants the functionality of rvm's gemsets, leaving rvm to handle its primary purpose: easily switching between Ruby versions.

Sharing a global gemset shared between all projects using the same ruby version means that instead of installing a gem once per project, all projects using Ruby 1.9 can share the same gem.  This can make a pretty big difference when you have many projects, develop gems, or use gems that are costly to reinstall (e.g. capybara-webkit).

Legacy projects without bundler will still need gemsets, and jumping around between projects that don't use bundler will probably still prove the value of rvm's gemsets, but when starting a new project using bundler, there is no need to use a gemset.

See also:

No comments:

Post a Comment