>我不断收到此错误
Your Ruby version is 2.5.0, but your Gemfile specified 2.5.1
我使用rbenv和自制软件。 我也意识到我有.asdf工作。
基于其他Stackoverflow,我已经尝试过:
2.5.0 % rbenv local 2.5.1
rbenv: version `2.5.1' not installed
2.5.0 % ruby -v
ruby 2.5.0p0 (2017-12-25 revision 61468) [x86_64-darwin16]
当我运行此命令时,我得到这个:
2.5.0 .rbenv % gem env home
/Users/annxxxx/.asdf/installs/ruby/2.5.0/lib/ruby/gems/2.5.0
更新:
因此,所有与Homebrew相关的命令都不起作用,因为似乎我的系统似乎正在.asdf文件中查找ruby(此版本的ruby是2.5.0(指向使用.asdf
我将 .asdf 更新为现在使用 2.5.1(所以现在可以工作 - 但我的机器现在有多个 2.5.1 的副本(
我的结论是,我的机器上有多个 ruby 副本。 - 一套RBENV/自制软件 - 一套用于 .asdf
问题: 1-我应该同时拥有这两个吗? 2-我更愿意删除.asdf? 答:我该怎么做? b-一旦我这样做了,我需要做什么才能让rbenv/Homebrew工作?
如果您使用多个版本管理器,则最终会拥有所有内容的多个版本。asdf
以~/.asdf/installs/ruby/*
安装,chruby
从~/.rubies
读取(ruby-install
安装它们的位置(,RVM
安装在~/.rvm/rubies
中,rbenv
以~/.rbenv/versions
安装,rbfu
以~/.rbfu/rubies
安装。
您需要决定一个版本管理器并对其进行配置,使其接受项目的配置。
你可以使用asdf
,设置它以便它读取.ruby-version
(见 https://github.com/asdf-vm/asdf-ruby#ruby-version-file(,并删除所有其他 - 另外,确保将依赖项捆绑在每个项目中,否则你会得到一个非常混乱的全局。
为了帮助过渡,请为旧版本管理器设置一个 shell 别名(例如在 bash 中,将alias rbenv="echo 'Use ASDF instead'"
添加到 shell init 文件中 - 根据需要排列"旧版本管理器"和"新版本管理器"名称(