Many gems are hosted on git repositories, such as the public repositories on Github. However, to get the latest version, quite often there are no gems built for you to install with ease. Installing from git is quite easy though.
First you have to understand what git is. Git is what the developers of the library use to track the source code and to collaborate. Git is not a release mechanism. It's important to note that the version of the software you get from git may or may not be stable. It's not a release version, and could contain bugs that will be fixed before the next official release.
The first thing you have to do in order to install gems from git is install git. This page of The Git Book explains how to do this. It's rather straightforward on all platforms and once it's installed, you have everything you need.
Installing a gem from a Git repository is going to be a 4 step process.
- Clone the Git repository.
- Change to the new directory.
- Build the gem.
- Install the gem.
Clone the Git Repository
In Git lingo, to "clone" a git repository is to make a copy of it. We're going to be making a copy of the rspec repository from github. This copy will be a full copy, the same the developer will have on their computers. You can even make changes (though you won't be able to commit these changes back into the repository).
The only thing you need to clone a git repository is the clone URL. This is provided on the github page for RSpec. The clone URL for RSpec is git://github.com/dchelimsky/rspec.git. Now simply use the "git clone" command provided with the clone URL.
$ git clone git://github.com/dchelimsky/rspec.git
This will clone the RSpec respository into a directory called rspec. This directory should always be the same as the final part of the clone URL (minus the .git part).
Change to The New Directory
This step, too, is very straightforward. Simply change to the new directory created by Git.
$ cd rspec
Build the Gem
This step is a bit more tricky. Gems are built using Rake, using the task called "gem."
$ rake gem
It may not be that simple though. When you install a gem using the gem command, silently in the background it does something rather important: dependency checking. When you issue the rake command, it may come back with an error message saying it needs another gem installed first, or that you need to upgrade a gem already installed. Install or upgrade this gem using either the gem command, or by installing from git. You may have to do this several times depending on how many dependencies the gem has.
Install the Gem
When the build process is completed, you will have a new gem in the pkg directory. Simply give the relative path to this .gem file to the gem install command. You'll need administrator privileges to do this on Linux or OSX.
$ gem install pkg/gemname-1.23.gem
The gem is now installed and can be used just as any other gem.