Gems from git repositories

Bundler adds the ability to use gems directly from git repositories. Setting them up is as easy as adding a gem to your Gemfile. Using the very latest version of a gem (or even a fork) is just as easy as using an official release.
Because Rubygems lacks the ability to handle gems from git, any gems installed from a git repository will not show up in gem list. They will, however, be available after running Bundler.setup.
Specify that a gem should come from a git repository with a .gemspec at its root
gem "nokogiri", :git => "git://github.com/tenderlove/nokogiri.git"
If there is no .gemspec at the root of a git repository, you must specify a version that bundler should use when resolving dependencies
gem "deep_merge", "1.0", :git => "git://github.com/peritor/deep_merge.git"
Specify that a git repository containing multiple .gemspec files should be treated as a gem source
git "git://github.com/rails/rails.git" do
  gem "railties"
  gem "action_pack"
  gem "active_model"
end
Specify that a git repository should use a particular ref, branch, or tag
:git => "git://github.com/rails/rails.git", :ref => "4aded"
:git => "git://github.com/rails/rails.git", :branch => "2-3-stable"
:git => "git://github.com/rails/rails.git", :tag => "v2.3.5"
Specifying a ref, branch, or tag for a git repository specified inline works exactly the same way
gem "nokogiri", :git => "git://github.com/tenderlove/nokogiri.git", :ref => "0eec4"

Many thanks to Bundler's contributors and sponsors

Fork me on GitHub
Docs: v0.9 v1.0 v1.1 v1.2 v1.3