2010-09-05 11 views
29

Dans mon Gemfile Rails je ces groupes:Groupes dans un Gemfile dans Rails 3?

group :development, :test do 
    gem "capybara" 
    gem "database_cleaner" 
    gem "spork" 
    gem "launchy" 
end 

group :bdd do 
    gem "cucumber-rails" 
    gem "rspec-rails" 
end 

Qu'est-ce que cela signifie?

Répondre

30

De http://yehudakatz.com/2010/05/09/the-how-and-why-of-bundler-groups/:

groupes Définition vous permet de faire deux choses. Tout d'abord, vous pouvez installer les gemmes dans votre Gemfile, moins les groupes spécifiques. Par exemple, Rails place mysql et pg dans un groupe de base de données de sorte que si vous travaillez sur sur ActionPack, vous pouvez installer ensemble - sans db et exécuter les tests ActionPack sans avoir à vous préoccuper de l'installation des gemmes . Ensuite, vous pouvez lister les groupes spécifiques à auto-requérir en utilisant Bundler.require. Par défaut, Bundler.require requiert toutes les gemmes dans le groupe par défaut (qui est toutes les gemmes qui n'ont pas de groupe explicite). Vous pouvez également dire Bundler.require (: default,: another_group) pour exiger groupes spécifiques. Le regroupement de vos dépendances vous permet d'effectuer des opérations sur l'ensemble du groupe.