是否有可能让rvm知道在某个目录下导航时应该使用哪个gemset,就像你可以通过在该目录下导航git当前分支的信息一样?
我理解git是如何工作的,因为每个目录在根目录中都有自己的.git目录,但不知道是否可能,因为.rvm更像是用户范围的配置.或者答案是在每个目录中创建一个.rvm文件?
Yul*_*ule 30
对于访问它的其他人来说,有一种新方法可以做到这一点,而不必允许在.rvmrc文件中执行任意shell脚本.
创建一个名为.ruby-gemset
仅包含gemset名称的文件.
gemset
Run Code Online (Sandbox Code Playgroud)
需要一个最新版本的rvm才能使用.
您还可以通过创建名为.ruby-version
仅包含ruby版本的文件来指定ruby版本:
1.9.3
Run Code Online (Sandbox Code Playgroud)
这种格式还具有与rbenv
和兼容的优点rbfu
.
如果您使用已弃用的现有项目.rvmrc
,则可以使用以下命令将它们转换为新格式:
rvm rvmrc to .ruby-version
Run Code Online (Sandbox Code Playgroud)
Dyl*_*kow 29
.rvmrc
在每个项目/分支中创建一个文件,其内容类似于:
rvm gemset use xxxx
Run Code Online (Sandbox Code Playgroud)
保存.下次cd
进入该文件夹时,您可能会从RVM获得安全提示,以确保您想要使用它.rvmrc
.接受后,每次导航到该文件夹时,您都会看到"正在使用gemset'xxxx'".
pur*_*nic 25
我发现实现此目的的最简单方法是导航到项目文件夹,然后使用以下命令:
rvm --rvmrc --create <ruby>@<desired-gemset-name>
Run Code Online (Sandbox Code Playgroud)
例如 rvm --rvmrc --create 1.9.2-p290@testing_gemset
一下子,RVM将创建.rvmrc文件,填充它,安装正确的ruby版本 - 如果需要 - 并且(通常)切换到正确的ruby版本和gemset.我经常说,因为我发现cd .
在执行该命令之后我有时必须让RVM接收更改.
归档时间: |
|
查看次数: |
9845 次 |
最近记录: |