Reputation: 10350
In our rails 3.2 Gemfile
, there are some gems installed with option :git
pointing to repo on github
, such as:
gem 'ruote', :git => 'http://github.com/jmettraux/ruote.git'
After bundle install
, we type gem list
to list all the gems installed. However gem list
does not list ruote
as a gem installed. As a matter of fact, there is no ruote
listed at all. We notice the same thing also happens to all rails engines
which are installed with option :git
pointing to repo on github. Why gem list does not list all gems installed? How can we assure that ruote is correctly installed?
Upvotes: 14
Views: 7714
Reputation: 96484
gem list
is showing you all the gems installed on your machine.
When you have a gem with a different location than Ruby's gems, Bundler will store these locally for the project rather than system wide.
Upvotes: 0
Reputation: 16883
According to the Bundler Documentation, gems from git sources will not show up in gem list
because the gem
command cannot process them, so Bundler has to do all of the work by itself. Bundler stores these gems in its own location instead. (Note that this location has nothing to do with the current project. It is in ~/.bundler/...
by default.)
You can see that it is installed if bundle install
completes with no errors. You can also use bundle show
to see the list of gems that Bundler has set up for you.
Upvotes: 21
Reputation: 24815
gem list
is not the right way to show gems installed for the app, as it will show system wide gems.
To check what gems are for this app and their versions, check Gemfile.lock
. You'll have the most precise info there.
Upvotes: 1