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.

rbenv does…

  • 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 or 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 , nothing else needs to know about it.

Interested in using rbenv as your package manager!? Check out the handle guides listed below.

RESOURCES

Full Stack Engineer — THIS CODE IS ON FIRE!!!

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store