我正在使用 source /usr/local/opt/chruby/share/chruby/auto.sh 将 ruby 自动更改为 .ruby-version 中的版本,但不幸的是,这只适用于 cd。
当我在我的 mac 终端中打开一个新选项卡时,它会打开我在上一个选项卡中所在的同一目录,但自动更改不起作用。我对此的解决方案是返回cd ..并cd返回,这会触发更改。显然,这很烦人。
我尝试chruby_auto在新选项卡中手动调用该函数,但这没有效果。
在这种情况下,有人可以提供如何更新我的 ruby 版本的解决方案吗?我更喜欢自动解决方案,但会满足于调用命令。
实际上没关系,我按照 .bashrc 中这些调用的顺序将其追溯到一个问题
不正确:
source /usr/local/opt/chruby/share/chruby/chruby.sh
source /usr/local/opt/chruby/share/chruby/auto.sh
chruby ruby-2.3.0
Run Code Online (Sandbox Code Playgroud)
我发现你必须在默认行之后调用自动行。请注意,默认行也必须在 chruby.sh 行之后。
正确的:
source /usr/local/opt/chruby/share/chruby/chruby.sh
chruby ruby-2.3.0 # default order important, if comes after auto.sh, will undo the auto change
source /usr/local/opt/chruby/share/chruby/auto.sh
Run Code Online (Sandbox Code Playgroud)
所以我想把这个答案留在这里给后代吧