Posted over 5 years ago. Visible to the public.

rbenv: A basic introduction


We have projects that have been developed using many different versions of Ruby. Since we do not want to constantly update every old project, we need to have many Ruby versions installed on our development machines.

Rbenv Archive does that for us.

How it works

Rbenv installs ruby version and ruby gems to ~/.rbenv/versions/VERSION_NUMBER/.... This way many different Rubies can be installed at once.

When you run ruby or gem or bundler or any other Ruby binary

  • rbenv looks for a file .ruby-version in your directory (or any parent directory)
  • and sets your PATH to the correct Ruby on the fly


Check our card on installing rbenv.

Basic workflow

Choose your version

To use a specific Ruby version for your project, add a file .ruby-version that simply contains the version you want:


If you need to switch the version outside of a project for your current shell, you can also say

rbenv shell 2.3.1

Note that this causes your shell to ignore the .ruby-version until you close it.

Also see rbenv: How to switch to another Ruby version (temporarily, per project, or globally).

Show current version

To see the currently selected version (hopefully "2.3.1"), run

rbenv version

It will warn you if the version is not currently installed.

Install a missing version

rbenv install 2.3.1

You can skip the version number to install the currently selected one.

Does your version of Ruby on Rails still receive security updates?
Rails LTS provides security patches for unsupported versions of Ruby on Rails (2.3, 3.2, 4.2 and 5.2).

Owner of this card:

Tobias Kraze
Last edit:
7 months ago
by Henning Koch
About this deck:
We are makandra and do test-driven, agile Ruby on Rails software development.
License for source code
Posted by Tobias Kraze to makandra dev
This website uses short-lived cookies to improve usability.
Accept or learn more