2013-03-19 91 views

回答

2

你可以滾你自己:

require 'bundler/setup' 

group = :development 

deps = Bundler.environment.dependencies.select do |dep| 
    dep.groups.include?(group) or dep.groups.include?(:default) 
end 

puts "Gems included by the bundle in group #{group}:" 
deps.each do |dep| 
    spec = dep.to_spec 
    puts "* #{spec.name} (#{spec.version})" 
end 

Gemfile

source 'https://rubygems.org' 


gem 'sinatra' 
gem 'thor' 

group :test do 
    gem 'rspec' 
end 

group :development do 
    gem 'rspec' 
    gem 'pry' 
end 

輸出示例:

Gems included by the bundle in group development: 
* sinatra (1.4.1) 
* thor (0.17.0) 
* rspec (2.13.0) 
* pry (0.9.12) 
+0

太棒了!我已經做了一個耙子任務。謝謝! – Geo 2013-03-19 12:58:19

1

應該已經有在指定的測試將是你的測試環境的一部分塊你的Gemfile

什麼,試塊之外而不是在另一塊東西也將被加載。

所有依賴,應在Gemfile.lock的

編輯

OK,根據您的反饋,這應該做你想做的上市。

Rails c test 

在測試環境中打開控制檯

pp Gem.loaded_specs.sort 

這將prettyprint所有的規格按字母順序

+0

他們,但我想,也許有一些命令,類似於'捆綁show',那會告訴我的寶石在特定的環境。 – Geo 2013-03-19 12:17:39

+0

根據你的評論更新 – muttonlamb 2013-03-19 12:36:41