如何在RVM中创建一个gemset默认?

at.*_*at. 31 ruby macos gem rubygems rvm

每当我在Mac OS X中启动一个新终端时,我都试图将gemset设为默认值:

rvm use 1.9.3@rails3.2 --create --default
Run Code Online (Sandbox Code Playgroud)

这似乎工作,rails3.2 gemset成为当前的gemset:

$ rvm gemset list

gemsets for ruby-1.9.3-p0 (found in /Users/me/.rvm/gems/ruby-1.9.3-p0)
   global
=> rails3.2

$
Run Code Online (Sandbox Code Playgroud)

但是当我打开一个新的终端时,rails3.2 gemset不再是当前的:

$ rvm gemset list

gemsets for ruby-1.9.3-p0 (found in /Users/me/.rvm/gems/ruby-1.9.3-p0)
   global
   rails3.2

$
Run Code Online (Sandbox Code Playgroud)

我该怎么办?

Mik*_* K. 49

您是否rvm --default use在创建gemset后尝试指定,因此传递:

 rvm --default use ruby-1.9.3-p0@rails3.2
Run Code Online (Sandbox Code Playgroud)

然后看看是否粘?同时使用create和default不是我以前尝试过的东西,它是唯一让我觉得不合适的东西.

鉴于下面的讨论,我将此作为处理问题的手段.(就我个人而言,我可能会破坏rvm并重新开始.) 但是,如果您想尝试使用此安装进行操作,那么我会查看您的.rvm文件夹,特别是.rvm/environments/default 其中包含导出的所有环境变量默认环境.在这里,您会发现rvm_gemset_name这可能设置不正确,并且由于某种原因(权限?)没有更新,或者在这种情况下正确设置了其他一些环境问题.如果不正确,您可以尝试在文件中手动设置它.


Ram*_*aja 6

使用以下命令将gemset设为默认值.

rvm use <ruby version>@<gemset name> --default
Run Code Online (Sandbox Code Playgroud)

例如.

 rvm use 1.8.7-p370@mygemset --default
Run Code Online (Sandbox Code Playgroud)


Amr*_*ana 6

您可以使用此命令.

rvm use --default <ruby version>@<gemset name>
Run Code Online (Sandbox Code Playgroud)

要么

rvm --default use <ruby version>@<gemset name> 要么

rvm use <ruby version>@<gemset name> --default 
Run Code Online (Sandbox Code Playgroud)