当我在终端中打开一个新选项卡时,RVM无法读取.ruby-gemset文件

ste*_*och 10 ruby rvm

我在Fedora 20上安装了新的RVM.

如果我cd到myapp,RVM将读取.ruby-gemset文件并切换到相应的gemset,但如果我打开一个新选项卡(control-shift-t)并运行rvm gemset list我发现它使用默认的gemset.

有没有人知道我可能做错了什么?

我在.bashrc中有以下内容

# .bashrc

# Source global definitions
if [ -f /etc/bashrc ]; then
    . /etc/bashrc
fi

PATH=$PATH:$HOME/.local/bin:$HOME/bin:$HOME/.rvm/bin

export PATH
[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm"
Run Code Online (Sandbox Code Playgroud)

而且我在.bash_profile中的内容相同

# .bash_profile

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
    . ~/.bashrc
fi

PATH=$PATH:$HOME/.local/bin:$HOME/bin:$HOME/.rvm/bin

export PATH

[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm"
Run Code Online (Sandbox Code Playgroud)

终端是Fedora附带的沼泽标准终端.

TeW*_*eWu 9

cd .~/.profile定的问题,对我来说.

如果你正在使用的zsh,投入cd .~/.zlogin.

  • 谢谢-这非常简单实用 (2认同)

mar*_*nja 4

我有同样的问题,并且我能够解决它。但是,我的确切解决方案可能对您来说毫无用处。我安装了 oh-my-zsh。看起来在安装过程中,它试图模仿我的 .bashrc 文件,并为我修改了 PATH 变量。这是我遇到问题的行:

export PATH="/home/alexander/.rvm/gems/ruby-2.1.1@security/bin:/home/alexander/.rvm/gems/ruby-2.1.1@global/bin:/home/alexander/.rvm/rubies/ruby-2.1.1/bin:/home/alexander/.nvm/v0.10.25/bin:/home/alexander/work/gc-sdk/google-cloud-sdk/bin:/usr/lib/lightdm/lightdm:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/home/alexander/.rvm/bin"
Run Code Online (Sandbox Code Playgroud)

因此,您需要验证您的 PATH 变量是否未经调整。并且您需要让 RVM 为您配置它。这两件事都可以通过终端中的一个简单命令来完成(假设您安装了 RVM):

rvm get stable --auto-dotfiles
Run Code Online (Sandbox Code Playgroud)

此外, GitHub上还创建了几个问题。常见的建议是使用上面的命令并将终端切换到登录 shell。

希望能帮助到你!