Skip to content

Instantly share code, notes, and snippets.

@fajrif
Created June 14, 2011 14:11
Show Gist options
  • Save fajrif/1024971 to your computer and use it in GitHub Desktop.
Save fajrif/1024971 to your computer and use it in GitHub Desktop.
RVM cheatsheet
RVM home page: http://rvm.beginrescueend.com
Install RVM
------------
See http://rvm.beginrescueend.com/rvm/install/
bash < <(curl -s https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer)
Install rvm for all users
--------------------------
Fairly complicated; make sure to read
http://rvm.beginrescueend.com/deployment/system-wide/
Upgrade to the latest version of rvm from github
-------------------------------------------------
rvm update --head
Ruby on Rails 3 Tutorial says to follow this with
rvm reload
rvm install 1.8.7
rvm install 1.9.2
and, if you need a patchlevel, do something like
rvm install 1.8.7-p174
Install a given version of ruby
--------------------------------
rvm install 1.9.2
If this fails with compiler errors, you may need to install some packages.
rvm pkg install openssl
rvm pkg install zlib
rvm pkg install readline
rvm pkg install iconv
rvm pkg install libxml2
rvm install 1.9.2 --with-openssl-dir=$rvm_path/usr \
--with-zlib-dir=$rvm_path/usr \
--with-readline-dir=$rvm_path/usr \
--with-iconv-dir=$rvm_path/usr \
--with-libxml2-dir=$rvm_path/usr
On Mac, you may need to install some libraries via MacPorts.
sudo port install ncurses
sudo port install libyaml
sudo port install zlib
rvm install 1.9.2 --with-libyaml-dir=/opt/local \
--with-openssl-dir=$HOME/.rvm/usr \
--with-readline-dir=$HOME/.rvm/usr \
--with-iconv-dir=$HOME/.rvm/usr
More at http://rvm.beginrescueend.com/rubies/installing/
Open a new shell and rvm!
-------------------------
rvm use 1.9.1
>> Switching to ruby 1.9.1 ...
ruby -v
>> ruby 1.9.1p243 (2009-07-16 revision 24175) [x86_64-linux]
which ruby
>> /home/wayne/.rvm/ruby-1.9.1-p243/bin/ruby
Make 1.9.2 default for all new shells
--------------------------------------
rvm --default 1.9.2
Reverting to system default
----------------------------
rvm system
ruby -v
>> ruby 1.8.7 (2008-08-11 patchlevel 72) [universal-darwin10.0]
which ruby
>> /usr/bin/ruby
Installing gems in multiple ruby versions
------------------------------------------
rvm 1.8.6,1.9.1 gem install rspec json --no-rdoc --no-ri
Starting a new project? Create a Gemset and rvmrc at the same time:
-------------------------------------------------------------------
rvm --create --rvmrc ree@project_name
Working with gemsets
--------------------
rvm 1.8.7 # use the ruby to manage gemsets for
rvm gemset create project_name # create a gemset
rvm gemset use project_name # use a gemset in this ruby
rvm gemset list # list gemsets in this ruby
rvm gemset delete project_name # delete a gemset
rvm 1.9.1@other_project_name # use another ruby and gemset
The global gemset
-----------------
With every ruby, rvm creates the global gemset. Gems installed into this
gemset are available to all gemsets in the ruby.
rvm 1.8.7
rvm gemset create project_name
gem list # no gems :(
rvm gemset use global
gem install rake
rvm gemset use project_name
gem list # rake :)
Install a gem directly into the global gemset:
rvm 1.8.7@global gem install shoulda
Install cheat in the global gemset when you install a new ruby:
echo "cheat" >> ~/.rvm/gemsets/global.gems
.rvmrc
------
rvm can automatically use a ruby and gemset when you cd to a project
directory.
echo "rvm 1.8.7@project_name" > ~/projects/project_name/.rvmrc
Lots more help
---------------
rvm help
http://rvm.beginrescueend.com/
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment