在RVM gemset中寻找类似gem list
的东西,但让它忽略全局和默认 gemsets中的宝石,这样我就可以轻松,准确地看到什么宝石在活动宝石集中(并且仅活动宝石集)。
答案 0 :(得分:58)
for global:
rvm @global do gem list
其他宝石集:
GEM_PATH=$GEM_HOME gem list
@global
是一个gemset,所有其他gemset都为给定的ruby继承,它不会为m本身继承,所以选择它并在其上下文中运行gem list
是安全的。
对于所有其他宝石套件,您可以使用gem list
显示GEM_HOME
和GEM_PATH
中所有可用路径中的宝石的事实,将GEM_PATH
重置为相等{{1}只会有一个路径可用 - 来自GEM_HOME
的路径,所以GEM_HOME
只显示所选gemset中的宝石,忽略所有其他宝石集(此时为gem list
,但RVM 2.0将支持多个gemsets继承)。
答案 1 :(得分:22)
最简单的方法是使用bash命令显示当前gemset目录中的目录列表
$ ls `rvm gemdir`/gems
答案 2 :(得分:4)
首先,每当选择任何其他gemset时,默认(无名称)gemset的内容将变为不可见。
如您所知,有效的@global gemset在当前所选Ruby的所有其他gemset中都是included。
但是,要查看gemset的内容(不包括@global gemset),请首先rvm use 2.0.0@some-gemset --ignore-gemsets
(或其他Rubies的similar)然后gem list
。
与查看@global gemset的内容类似,首先执行rvm use 2.0.0@global
然后gem list
。
同样要查看默认gemset的内容,请rvm use 2.0.0 --ignore-gemsets
然后gem list
。
顺便说一句,你可以为新的(非登录)shell选择一个gemset(所谓的)default(我总是在.bash_profile
等中为每个Ruby单独执行解释器)但这是另一种默认的宝石集,而不是上面的(未命名的)默认宝石集。