What is gemset in Ruby on Rails?

This article will help you understand what is gemset in ruby and all about creating and using gemsets in Ruby and RVM.

Gemset gives you the privilege of creating set of gems specific to your particular rails application.

  • gemset is basically set of gems collected together
  • These set of gems collected together can be used for the development of your particular application

In-Built Gemsets

  • When you install particular Ruby using RVM then it comes with 2 gemsets. viz. default and global.
  • You can list the gemsets that are available for current ruby version selected using command:
rvm gemset list
1.Creating a new Gemset
  • You can create new gemset using following command:
rvm gemset create rails4
  • This will create a new gemset with the name rails4
2. Using Particular Gemset
  • As you may have more that one gemsets installed on your machine, you might need to use specific version of gemset for your particular application. You can use specific gemset using following command:
rvm gemset use rails4
3. Setting Default Gemset
  • If you have more than one gemsets installed on your machine then you may want to set one of the gemset as the default gemset. You can do this by using following command,
rvm --default use ruby-2.0.0-p247@rails4

The command will set gem ‘rails4’ as the default gemset with your Ruby with the version ruby-2.0.0-p247.

4. Deleting a Gemset
  • You can delete particular gemset using following command:
rvm gemset delete rails4

These are the basics of creating, listing, using and deleting gemsets for your development. This answers the basic question of what is gemset by being able to make compartment/set of specific gems required for the development. You might want to read more about Gemfile and Gemfile.lock for understanding gem specifics for Rails project.