Почему люди помещают такие вещи, как `gem" guard "` в свою группу `: development` в Gemfiles - PullRequest
2 голосов
/ 05 сентября 2011

С виду это:

Bundler.require *Rails.groups(:assets => %w(development test))

Эти группы получения становятся обязательными при запуске приложения:

[:default, :development, :assets]

Почему guard требуется в вашем приложении?

Есть ли лучшая практика? e.g.:

group :misc do
  gem "guard"
end

1 Ответ

1 голос
/ 05 сентября 2011

Bundler достаточно умен, чтобы требовать только драгоценные камни для текущей среды. Группы соответствуют этим средам. Если ваше приложение работает в среде разработки, Bundler требуются гемы из этой группы, но не гемы из тестовой группы и т. Д.

Люди часто помещают драгоценные камни в: группу разработчиков, которая им нужна / нужна для их среды разработки, но не в их производственной системе.

Линия

Bundler.require *Rails.groups(:assets => %w(development test))

просто говорит, что Bundler потребует драгоценные камни из группы ресурсов только для вашей среды разработки и тестирования. Это предотвращает ленивую компиляцию ваших ресурсов на вашем производственном сервере, где вы обычно хотите развернуть предварительно скомпилированные ресурсы.

...