gpt4 book ai didi

ruby - 如何更改项目的默认 gemset 和 ruby​​ 版本?

转载 作者:太空宇宙 更新时间:2023-11-03 17:16:52 25 4
gpt4 key购买 nike

当我在我的系统上列出所有 Ruby 版本时,我得到这个:

$ rvm list rubies

rvm rubies

ruby-1.8.7-p370 [ i686 ]
ruby-1.9.2-p0 [ x86_64 ]
ruby-1.9.2-p320 [ x86_64 ]
* ruby-1.9.3-p194 [ x86_64 ]
=> ruby-1.9.3-p392 [ x86_64 ]
ruby-2.0.0-p0 [ x86_64 ]

# => - current
# =* - current && default
# * - default

当我在项目的新终端窗口中列出 gemset 时,我看到了:

$ rvm gemset list

gemsets for ruby-1.9.3-p392 (found in /.rvm/gems/ruby-1.9.3-p392)
(default)
=> myapp
boso
global

因此,我更改了要使用的 1.9.3 版本:

$ rvm use 1.9.3-p194
Using /.rvm/gems/ruby-1.9.3-p194
$ rvm gemset list

gemsets for ruby-1.9.3-p194 (found in /.rvm/gems/ruby-1.9.3-p194)
=> (default)
myapp1
myapp2
myapp3
myapp4
global

然后我尝试将 gemset myapp1 的默认值设置为版本 1.9.3-p194 并将其设置为默认值,这似乎有效:

$ rvm use 1.9.3-p194@myapp1 --default
Using /.rvm/gems/ruby-1.9.3-p194 with gemset myapp1

但是当我启动一个新的终端窗口并执行 rvm gemset list 时,我最终回到了方 block 1 - 使用不同的 ruby​​ versino - 即 1.9.3-p392 而不是 -p194

$ rvm gemset list

gemsets for ruby-1.9.3-p392 (found in /.rvm/gems/ruby-1.9.3-p392)
(default)
=> myapp
boso
global

发生这种情况是因为我在打开新终端窗口之前没有关闭之前的终端窗口吗?我是否必须强制 RVM 为所有 session 保存它?

我错过了什么?

我还尝试了 rvm --default use 1.9.3.-p194@myapp1 并且这给了我同样的问题。

最佳答案

如果您想要每个项目的特定 gemset 和 ruby​​ 版本,只需直接在您的根项目中手动创建一个 .rvmrc 文件。在该文件中添加:

ruby-1.9.3-p362@gemset-name --create

或者如果你不想手动创建它,你可以让 rvm 为你做。 cd 进入项目的根目录并创建一个 .rvmrc 文件,如下所示:

$ rvm use ruby-1.9.3-p194@gemset-name --create --rvmrc

确保 .rvmrc 文件包含与此类似且格式如下的行:

 environment_id="ruby-1.9.3-p392@gemset-name"

更新:

在使用 RVM 时,用于设置每个项目的 ruby​​ 版本和 gemset 的约定是使用 .ruby-version 文件和 .ruby-gemset 文件项目的根目录。

.ruby-version 文件看起来像这样:

ruby-2.0.0-p598

.ruby-gemset 文件看起来像这样:

my_gemset_name

关于ruby - 如何更改项目的默认 gemset 和 ruby​​ 版本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15353356/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com