Read more

rbenv: A basic introduction

Tobias Kraze
February 03, 2017Software engineer at makandra GmbH

Why

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.

Illustration online protection

Rails Long Term Support

Rails LTS provides security patches for old versions of Ruby on Rails (2.3, 3.2, 4.2 and 5.2)

  • Prevents you from data breaches and liability risks
  • Upgrade at your own pace
  • Works with modern Rubies
Read more Show archive.org snapshot

Rbenv Show archive.org snapshot 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

Installation

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:

2.3.1

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.

Posted by Tobias Kraze to makandra dev (2017-02-03 11:41)