Why doesn't the command `gem list` include gems installed with bundler's :git option?
gem 'ruote', :git => 'http://github.com/jmettraux/ruote.git'
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?
- How to get the last commit date of a file with ruby/grit?
- Resetting Accidental Changes on Heroku
- rake release fail (using gem bundler)
- basic ruby script not working as expected
- Access current git commit number from within Heroku app
- Heroku rejects my git push request
3 Solutions collect form web for “Why doesn't the command `gem list` include gems installed with bundler's :git option?”
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.
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.
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.