如何卸载gemset中的所有gem期望rails?
答案 0 :(得分:6)
这样做是个坏主意 Rails取决于几个宝石(事实上,它本身就是几个宝石) 因此,您将删除rails的依赖项,并且将无法再运行它(并且因为rubygems很聪明,它将同时删除rails而不是依赖项。)
因此,最佳方法是删除gemset。
rvm gemset delete <your gemset>
然后重新创建并安装rails
rvm gemset create <your gemset>
gem install rails
答案 1 :(得分:0)
也许你可以使用这样的东西。 使用你的宝石 rvm使用1.9.2@gemset 然后输入此代码。
gem list | grep -v rails | awk '{print $1}' | xargs echo
它将打印安装的每个宝石。如果没问题,那么你可以用gem uninstall注释替换'echo'。我没有测试过,所以要小心。
但由于依赖性,最好卸载所有gem并再次安装rails。使用此代码,依赖性将被破坏。
答案 2 :(得分:0)
如果你进入Gemfile.lock,你可以得到Rails系统所依赖的宝石的确切列表。你必须非常小心这样做,但你应该能够删除那些没有嵌套在主Rails gem下的那些。
请注意两件事:走向这个方向可能会导致重大事情的消失。我使用3.0.3所以我不知道我的回复是否会延续到3.1甚至3.0之前的事情。
我同意其他海报,最好的方法是干净的房子,只需重新安装Rails。这不是那么痛苦。干净的rvm gemset可能是最好的方法。