如何降级捆绑器或升级导轨?

Posted

技术标签:

【中文标题】如何降级捆绑器或升级导轨?【英文标题】:How to downgrade bundler or upgrade rails? 【发布时间】:2012-04-01 07:40:44 【问题描述】:

我将omniauth gem 添加到我的gemfile 并尝试运行bundle install,但收到有关rails 和bundler 版本不兼容的消息。我尝试更新 rails,但收到有关与其他 gem 不兼容的消息。如何将捆绑程序降级到 1.0?

$ bundle install
Fetching gem metadata from http://rubygems.org/......
Fetching gem metadata from http://rubygems.org/..
Bundler could not find compatible versions for gem "bundler":
  In Gemfile:
    rails (= 3.0.0) ruby depends on
      bundler (~> 1.0.0) ruby

  Current Bundler version:
    bundler (1.1.1)

This Gemfile requires a different version of Bundler.
Perhaps you need to update Bundler by running `gem install bundler`?

$ bundle update rails
Fetching gem metadata from http://rubygems.org/......
Fetching gem metadata from http://rubygems.org/..
Bundler could not find compatible versions for gem "bundler":
  In Gemfile:
    factory_girl_rails (>= 0) ruby depends on
      bundler (~> 1.0.0) ruby

  Current Bundler version:
    bundler (1.1.1)

【问题讨论】:

【参考方案1】:

gem 卸载捆绑程序 -v 2.2.0 为我工作

【讨论】:

【参考方案2】:

第 1 步:安装旧版本(例如 1.17.3):

gem install bundler --version '1.17.3'

第 2 步:卸载较新版本:

gem uninstall bundler

【讨论】:

【参考方案3】:

如果您想降级或升级您的bundler 当我们尝试卸载全局捆绑器版本时出现一些问题。我用自己的技术解决了这个问题。请按照以下步骤操作:

第一步:运行:gem list bundler

*** LOCAL GEMS ***
bundler (2.0.2, 1.17.3)
bundler-unload (1.0.2)
rubygems-bundler (1.4.4)

我这里有 2 个捆绑器版本 2.0.2 和 1.17.3。现在我卸载 2.0.2,因为我将使用 1.17.3。但是当我尝试使用此命令gem uninstall bundler --version '2.0.2' 卸载 2.0.2 时,我发现一个错误:

ERROR:  While executing gem ... (Gem::InstallError)
bundler is not installed in GEM_HOME, try:
    gem uninstall -i /home/habib/.rvm/gems/ruby-2.3.1@global bundler

因为它是我的全局捆绑器。但是错误消息有解决方案。然后我尝试第 2 步。

第二步:运行gem uninstall -i /home/habib/.rvm/gems/ruby-2.3.1@global bundler

输出: Successfully uninstalled bundler-2.0.2

第 3 步:我再次检查我的捆绑程序列表运行 gem list bundler

*** LOCAL GEMS ***

bundler (1.17.3)
bundler-unload (1.0.2)
capistrano-bundler (1.2.0)
rubygems-bundler (1.4.4)

这里我只有一个捆绑器1.17.3,我可以在任何项目中使用它

检查您的捆绑器版本:运行 bundler -v

output:Bundler version 1.17.3

【讨论】:

【参考方案4】:

要降级,只需输入gem uninstall bundler,它将显示:

Select gem to uninstall:
 1. bundler-1.13.7
 2. bundler-1.14.4
 3. bundler-1.16.4
 4. bundler-2.0.2
 5. All versions

只需选择要卸载的版本即可。

【讨论】:

【参考方案5】:

尝试以下命令:

gem uninstall bundler
gem install bundler --version '1.0.0'

【讨论】:

Gem bundler-2.1.2 cannot be uninstalled because it is a default gem【参考方案6】:

要安装降级版本的捆绑器,请尝试:

gem install bundler --version '<= 0.10.6'

这样您就可以安装两个版本(检查:gem list bundler/bundler _0.9.26_ -v),然后使用该特定版本运行,例如:

bundle _0.9.26_ install

了解更多:How to upgrade/downgrade Rubygems ruby​​forge

【讨论】:

以上是关于如何降级捆绑器或升级导轨?的主要内容,如果未能解决你的问题,请参考以下文章

如何升级/降级 iOS 自动更新订阅

从滑轨3.2升级到导轨4

[译]HDFS 滚动升级和降级

导轨。 'Bundle install' 在 Ruby 版本升级 (Windows) 后给出了 'bad interpreter: No such file or directory' 错误

Linux openssl 升级降级

导轨捆绑清洁