由rvm打开新的tab终端重置gemset

Moh*_*out 5 ruby-on-rails .bash-profile rvm gemset

当我打开终端然后进入rails应用程序时,rvm会将gemset加载到.ruby-gemset文件中,如下所示:

> cd my_application/ 
> rvm gemset list
Run Code Online (Sandbox Code Playgroud)

输出如下:

gemsets for ruby-2.2.2 (found in /home/yakout/.rvm/gems/ruby-2.2.2)
   (default)
=> my_gemset
   global
Run Code Online (Sandbox Code Playgroud)

然后我在终端打开新标签,然后运行rvm gemset list,输出将是:

gemsets for ruby-2.2.1 (found in /home/yakout/.rvm/gems/ruby-2.2.1)
=> (default)
   global
Run Code Online (Sandbox Code Playgroud)

我把以下行放在.profile文件中:

export PATH="$PATH:$HOME/.rvm/bin" # Add RVM to PATH for scripting

[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" # Load RVM into a shell session *as a function*
Run Code Online (Sandbox Code Playgroud)

我将以下行放在.bash_profile文件中:

[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" # Load RVM into a shell session *as a function*
Run Code Online (Sandbox Code Playgroud)

我把以下行放在.bashrc文件中:

PATH=$PATH:$HOME/.rvm/bin
Run Code Online (Sandbox Code Playgroud)

我通过以下方式更改了终端的首选项:Edit- > Preferences- > Title and Commandtab - > Run command as a login shell.

rvm当我在终端中打开新标签时,如何加载当前的gemset?

小智 5

当您打开新选项卡时,有一种解决方法可以获取正确的 gemset。在 ~/.profile 的末尾添加这一行

cd .
Run Code Online (Sandbox Code Playgroud)

我从https://github.com/rvm/rvm/issues/2527得到这个


小智 0

您只需在应用程序目录中添加两个文件即可做到这一点。具有以下名称:

.ruby-gemset

.ruby 版本

在 .ruby-gemset 中只需提及您的宝石集名称

在 .ruby-version 中只需提及您的 ruby​​ 版本