RVM, Gemset, Bash на MacOSX - что я сделал во время обновления? - PullRequest
2 голосов
/ 01 февраля 2012

Каждый раз, когда я открываю новый терминал в Mac OSX Lion, рельсы не загружаются.Это после того, как я обновился до ruby ​​1.9.3 и rails 3.2 - поэтому я много настраивал, но не уверен, что я облажался.Раньше он работал нормально.

Если я загружаю новый терминал при запуске, и набираю:

rvm

, который работает.

Если я печатаю

ruby -v

Я получаю правильное (1.9.3)

, но если я набираю rails -v, я получаю сообщение об ошибке:

/Users/userishere/.rvm/rubies/ruby-1.9.3-p0/lib/ruby/site_ruby/1.9.1/rubygems/dependency.rb:247:in `to_specs': Could not find rails (>= 0) amongst [rake-0.9.2.2, rake-0.9.2] (Gem::LoadError)
    from /Users/userishere/.rvm/rubies/ruby-1.9.3-p0/lib/ruby/site_ruby/1.9.1/rubygems/dependency.rb:256:in `to_spec'
    from /Users/userishere/.rvm/rubies/ruby-1.9.3-p0/lib/ruby/site_ruby/1.9.1/rubygems.rb:1208:in `gem'
    from /usr/bin/rails:18:in `<main>'

Если я набираю:

   rvm use 1.9.3p0@rails32 --default

Это заставляет рельсы работать как обычно, но только в этом окне терминала - даже когда в терминале появляется новая вкладка, рельсы выдают ошибки - как я могу принять этот gemset / config в качестве глобального значения по умолчанию при каждом запуске?У меня есть:

[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm" # Load RVM function

в моем .bash_profile.

Что я сделал с моей конфигурацией / пропустил в моем обновлении?Это кажется чем-то простым, но я не замечаю этого.

Ответы [ 2 ]

1 голос
/ 01 февраля 2012

rvm 1.9.3-p0@rails32 - по умолчанию он работает только для текущего окна терминала, как только я добавил другое или вышел и вернулся, он снова не работает.

Я исправил это с помощьюдобавив файл .rvmrc в каталог моего приложения.Теперь он корректно загружает версию gemset & ruby.

Согласно: http://seanbehan.com/mac-os-x/installing-and-using-rvm-on-mac-os-x-creating-gemsets-and-reverting-to-original-environment/

1 голос
/ 01 февраля 2012

Я только что переключил свой собственный rvm по умолчанию с помощью команды rvm 1.9.2-p290@mybranch --default (не то чтобы у меня не было 'use' в команде)

Затем, если вы откроете новое окно терминала или вкладку и наберете rvm list, вы увидите => рядом с версией ruby, которую он использует. Я вижу это:

   ree-1.8.7-2010.02 [ x86_64 ]
   ruby-1.8.7-p302 [ x86_64 ]
   ruby-1.9.1-p378 [ x86_64 ]
   ruby-1.9.2-p0 [ x86_64 ]
   ruby-1.9.2-p136 [ x86_64 ]
   ruby-1.9.2-p180 [ x86_64 ]
=> ruby-1.9.2-p290 [ x86_64 ]

Мне нравится видеть, какую версию rvm и набор гемов я использую рядом с моей командной строкой. В вашем .bash_profile прямо перед указанной строкой, которая загружает функцию RVM, добавьте:

PS1 = "\ $ (~ / .rvm / bin / rvm-prompt i v g s) $ PS1"

Что предшествует этому моему приглашению: ruby-1.9.2@myapp

...