RVM supports few ways of upgrading itself.
Every month or two a stable release of RVM is created, it includes minor version increase. Between releases only bugfixes and ruby version updates are added to it with teeny version update. Normal development and major changes continue on master branch to install it use head version. It's important to use head version before reporting errors as those could be already fixed.
To upgrade to the most stable version
$ rvm get stable
installs the stable version.
Upgrading to the latest repository source version (the most bugfixes)
$ rvm get head
obtains the latest RVM repository version.
Installer also will update RVM:
$ \curl -L https://get.rvm.io | bash -s stable # update to stable $ \curl -L https://get.rvm.io | bash -s head # update to head $ rvm reload
Yes, there's a backslash before the curl. It is important to reload after using installer for update.
Auto update sourcing line
$ rvm get stable --auto
by using the auto flag RVM will know to update the user configuration files to the best known way of sourcing RVM.
In early days RVM was developed only on master branch, versions were released to RVM server and when version was bug free the latest file was updated to point to it. This has changed, as mentioned above RVM stable is released and only bugfixes / ruby version updates are applied to it. The current equivalent of latest is stable and should be used instead. When updating very old versions head should be used and can be followed by stable.
Upgrading to someones else forked branch
$ rvm get branch [owner/][branch]
obtains the given branch possibly from the given owner, examples:
$ rvm get branch shoes # shoes branch from wayneeseguin rvm repository $ rvm get branch mpapis/ # master branch from mpapis rvm repository $ rvm get branch mpapis/shoes # shoes branch from mpapis rvm repository
After updating RVM, you may be also interested in Upgrading Rubies.