2013-07-23 4 views
5

Im, использующий RVM с рубином на рельсах, когда я делаю bundle install, он показывает целую кучу больше драгоценных камней, чем когда я делаю gem list? Что-то связано с rvm и какой путь его использует?Rvm и драгоценные камни, список пучков и список драгоценных камней

комплект установки

[email protected]:~/staging$ bundle 
Using rake (0.9.6) 
Using Ascii85 (1.0.1) 
Using Platform (0.4.0) 
Using open4 (1.3.0) 
Using POpen4 (0.1.4) 
Using activesupport (2.3.17) 
Using rack (1.1.6) 
Using actionpack (2.3.17) 
Using actionmailer (2.3.17) 
Using activerecord (2.3.17) 
Using activeresource (2.3.17) 
Using acts_as_audited (1.1.1) 
Using addressable (2.2.8) 
Using builder (3.0.0) 
Using gyoku (1.0.0) 
Using nokogiri (1.5.6) 
Using akami (1.2.0) 
Using ar-extensions (0.9.5) 
Using cgi_multipart_eof_fix (2.5.0) 
Using chunky_png (1.2.5) 
Using cocaine (0.2.1) 
Using coderay (1.0.9) 
Using fssm (0.2.9) 
Using sass (3.1.18) 
Using compass (0.12.1) 
Using daemons (1.1.9) 
Using warden (0.10.7) 
Using devise (1.0.6) 
Using fastimage (1.2.13) 
Using html_compressor (0.0.3) 
Using rubyzip (0.9.8) 
more gems...... 
Your bundle is complete! 
It was installed into ./vendor/bundle 

список драгоценных камней

[email protected]:~/staging$ gem list 

*** LOCAL GEMS *** 

actionmailer (2.3.17) 
actionpack (2.3.17) 
activerecord (2.3.17) 
activeresource (2.3.17) 
activesupport (2.3.17) 
bundler (1.3.5) 
bundler-unload (1.0.1) 
daemon_controller (1.1.4) 
fastthread (1.0.7) 
passenger (3.0.19) 
rack (1.5.2, 1.1.6) 
rails (2.3.17) 
rake (10.1.0) 
rubygems-bundler (1.2.2) 
rvm (1.11.3.8) 

ответ

1

, прежде чем делать gem list убедитесь, что вы используете gemset приложения:

rvm use [email protected]_gemset 
gem list 

не забудьте повторно место application_ruby с вашей строкой строки ruby ​​и application_gemset на gemset, который используется вашим приложением rails

+0

Список драгоценных камней, по-прежнему показывающий diffirent результат, чем установка пакета – Francois

1

В корне каталога есть скрытый каталог .bundle. Удалите это, затем снова запустите пакет.

2

это происходит, когда вы используете bundle install --deployment или bundle install --path=..., он генерирует .bundle/config с чем-то вроде этого:

--- 
BUNDLE_FROZEN: '1' 
BUNDLE_PATH: vendor/bundle 
BUNDLE_DISABLE_SHARED_GEMS: '1' 

это может быть сделано одним из вас сотрудников или интеграции пакетирования/Capistrano:

  1. , если это был ваш коллега, тогда просто удалите и проигнорируйте его:

    rm -rf .bundle 
    echo '.bundle' >> .gitignore 
    
  2. для Capistrano rvm-capistrano описывает, как отключить =>https://github.com/wayneeseguin/rvm-capistrano#disabling-bundle---deployment-when-using-gemsets

0

Согласно bundler documentation текущей по умолчанию, в случае ОПС, могут быть установлены на поставщика/пакет, например, по предварительному исполнению bundle install --path vendor/bundle:

Дальнейшие пачке команд или вызовов Bundler.setup или Bundler.require запомнит эту точку

также проверить содержимое $ BUNDLE_PATH, который показывает, где он установлен. Примечание. Возможно также, что он был установлен для поставщика/пакета через опцию --deployment. См Deplyment mode 3.

Как ответило here, gem list покажет только драгоценные камни, установленные с помощью --system вариант (см принятого ответа и Каспар комментарий); вместо этого используйте bundle list, чтобы показать драгоценные камни, установленные в каталоге приложения, то есть через bundle install (без опции --system).