Both rbenv and RVM are Ruby version management tools aka package managers. A package manager is a collection of software tools that automates the process of installing, upgrading, configuring, and removing computer programs from an OS in a consistent manner. In the Ruby world, RVM is widely accepted as the norm because of it’s wide toolkit. However, a major pro of rbenv is that it’s lighter and more unobtrusive than RVM.
- Provide support for specifying application-specific Ruby versions.
- Let you change the global Ruby version on a per-user basis.
- Allow you to override the Ruby version with an environment variable.
In contrast with RVM, rbenv does not…
- Need to be loaded into your shell. Instead, rbenv’s shim approach works by adding a directory to your
- Override shell commands like
cdor require prompt hacks. That's dangerous and error-prone.
- Have a configuration file. There’s nothing to configure except which version of Ruby you want to use.
- Install Ruby. You can build and install Ruby yourself, or use ruby-build to automate the process.
- Manage gemsets. Bundler is a better way to manage application dependencies. If you have projects that are not yet using Bundler you can install the rbenv-gemset plugin. Starting a project is as easy at typing
- Require changes to Ruby libraries for compatibility. The simplicity of rbenv means as long as it’s in your
$PATH, nothing else needs to know about it.
Interested in using rbenv as your package manager!? Check out the handle guides listed below.
Why and How I Replaced RVM with RBENV
My morning started out like most people's, as I sat down at my computer while eating a bacon-egg-and-cheese on an…
Choosing a Ruby Version Management Tool: rbenv vs RVM - Metova
Choosing a Ruby version management tool often comes down to two players: rbenv and RVM. The latter was widely accepted…