繁体   English   中英

如何使用RVM卸载除rails之外的gemset中的所有gem?

[英]How to use RVM to uninstall all gem inside a gemset except rails?

如何卸载gemset期望轨道内的所有gem?

这样做将不是一个好主意。
Rails依赖于几个宝石(实际上,它本身就是几个宝石)。
因此,您将要删除Rails的依赖项,并且将无法再运行它(并且rubygems很聪明,它将在删除依赖项的同时删除Rails)。

因此,最好的方法是删除宝石。

rvm gemset delete <your gemset>

然后重新创建它并安装导轨

rvm gemset create <your gemset>
gem install rails

也许您可以使用类似这样的东西。 使用您的gemset rvm use 1.9.2@gemset然后输入此代码。

gem list | grep -v rails | awk '{print $1}' | xargs echo

它将打印所有安装的宝石。 如果还可以,则可以用gem卸载注释替换“ echo”。 我没有测试过,所以要小心。

但是,由于存在依赖性,最好卸载所有gems并重新安装rails。 使用此代码,依赖关系被破坏。

如果您进入Gemfile.lock,则可以获取Rails系统所依赖的宝石的最终列表。 您必须非常小心地执行此操作,但是您应该能够删除那些不嵌套在主要Rails gem下的对象。

请注意两件事:朝这个方向前进可能会导致重大事情丢失。 我使用3.0.3,所以我不知道我的响应是否会延续到3.1甚至3.0之前的版本。

我同意其他海报,最好的方法是打扫房间,然后重新安装Rails。 并不是那么痛苦。 干净的rvm gemset可能是最好的方法。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM