2011-12-29 4 views
2

У меня никогда не возникало этой проблемы при работе с Rails в Linux, но, перейдя на OSX каждый раз, когда я перезагружаю свою машину, RVM теряет список gemset, но они на самом деле не исчезли.RVM и OSX Lion - RVM «забывает» gemsets при перезапуске системы

Например, у меня есть несколько гемземов, которые уже сделаны, и я перезагружаю компьютер.

я запускаю следующую команду:

$ rvm gemset list 

gemsets for system (found in /Users/evan/.rvm/gems/system) 
* 

Это, конечно, приводит к хаосу, когда я бегу rails s, чтобы запустить свой сервер.

Единственный способ, которым я уже успел получить gemsets назад, чтобы создать фиктивный gemset:

$ rvm --create [email protected] 
$ rvm gemset list 

gemsets for ruby-1.9.2-p290 (found in /Users/evan/.rvm/gems/ruby-1.9.2-p290) 
asdasdads 
=> blahblah 
global 
rails3.1 
rails31 
test 
test3 
test6 
whymvc 

Это показывает все gemsets я создал (и необходимости). В этот момент я изменить gemset назад к той, которую я хочу:

$ rvm gemset use rails3.1 
Using /Users/evan/.rvm/gems/ruby-1.9.2-p290 with gemset rails3.1 

На данный момент я туда, где мне нужно быть, чтобы функционально развиваться до следующей перезагрузки.

Я считаю, что я следовал инструкциям правильно на сайте РВМ, и мой .bash_profile выглядит так:

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

Мой вопрос заключается в следующем:

Как я могу настроить RVM «вспомнить» gemsets, которые я создал без создания/удаления фиктивных?

Edit # 1 - rvm info выход

Запуск rvm info производит следующий вывод:

$ rvm info 

system: 

    system: 
    uname:  "Darwin emcummings-pc 11.2.0 Darwin Kernel Version 11.2.0: Tue Aug 9 20:54:00 PDT 2011; root:xnu-1699.24.8~1/RELEASE_X86_64 x86_64" 
    bash:  "/bin/bash => GNU bash, version 3.2.48(1)-release (x86_64-apple-darwin11)" 
    zsh:   "/bin/zsh => zsh 4.3.11 (i386-apple-darwin11.0)" 

rvm: 
    version:  "rvm 1.10.0-pre by Wayne E. Seguin ([email protected]) [https://rvm.beginrescueend.com/]" 

homes: 
    gem:   "not set" 
    ruby:   "not set" 

binaries: 
    ruby:   "/usr/bin/ruby" 
    irb:   "/usr/bin/irb" 
    gem:   "/usr/bin/gem" 
    rake:   "/usr/bin/rake" 

environment: 
    PATH:   "/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/Users/evan/.rvm/bin" 
    GEM_HOME:  "" 
    GEM_PATH:  "" 
    MY_RUBY_HOME: "" 
    IRBRC:  "" 
    RUBYOPT:  "" 
    gemset:  "" 
+0

У меня таких проблем нет. Каков результат 'rvm info' после перезагрузки? –

+0

Я добавил результаты на 'rvm info' к ответу выше - у меня на базовом уровне с RVM вообще, поэтому я не уверен, есть ли там проблемы или нет – Evan

ответ

10

Вероятно, что ваш по умолчанию РВМ рубин не установлен.

Попробуйте запустить:

rvm use --default --create [email protected] 

, а затем перезагрузки.

Если ваш гемсет уже существует, вы можете опустить --create.

rvm use --default [email protected] 
+0

Хороший материал, спасибо! Единственное отличие заключается в том, что я удалял '-create', поэтому выражение выглядит так:' rvm use --default 1.9.2 @ rails3.1' - Оцените руководство – Evan

+0

Да, если оно уже существует, не нужно запускать с ' --create'. Рад, что я помог :-) –

+0

обновил ответ, для будущих посетителей :-) –

Смежные вопросы