【发布时间】:2010-06-10 17:37:21
【问题描述】:
如果我执行sudo gem uninstall rails -v 3.0.0.beta3,它会卸载 rails 但会保留 beta3 版本的 activerecord、actionmailer 等。如何自动完全卸载 rails 3.0.0.beta3 及其所有依赖项?我想要一个全新的 RC 和最终版本。
【问题讨论】:
标签: ruby-on-rails ruby rubygems ruby-on-rails-3
如果我执行sudo gem uninstall rails -v 3.0.0.beta3,它会卸载 rails 但会保留 beta3 版本的 activerecord、actionmailer 等。如何自动完全卸载 rails 3.0.0.beta3 及其所有依赖项?我想要一个全新的 RC 和最终版本。
【问题讨论】:
标签: ruby-on-rails ruby rubygems ruby-on-rails-3
$ gem list
...
$ sudo gem uninstall {gem-you-don't-want} {version-you-don't-want}
$ {rinse-and-repeat}
【讨论】:
如果你的情况是你已经安装了 beta 4 并且想摆脱 beta 3,你可以简单地运行
gem cleanup
这会删除所有 gem 的最新版本(删除 beta 3 并留下 beta 4)。
【讨论】:
您可以列出特定 Rails 版本的所有依赖项
$ gem dependency rails -v 3.1.0
Gem rails-3.1.0
actionmailer (= 3.1.0)
actionpack (= 3.1.0)
activerecord (= 3.1.0)
activeresource (= 3.1.0)
activesupport (= 3.1.0)
bundler (~> 1.0)
railties (= 3.1.0)
不幸的是,没有任何单个命令可以删除所有依赖项。您必须手动删除每个依赖的 gem
$ gem remove activerecord -v 3.1.0
You can also view reverse dependencies by using the **-v** flag
$ gem dependency rails -r
【讨论】:
除非您围绕 gem 卸载命令编写自己的脚本包装器,否则您无法自动执行此操作
只需手动对其他文件(如 activerecord、activesupport 等)执行 gem 卸载...
【讨论】:
您只需尝试此命令。它将有助于卸载所有 rails gem uninstall railties 我认为这是完全卸载所有版本的 rails 的唯一方法
【讨论】: