Rails: vendor / gems или vendor / plugins? - PullRequest
3 голосов
/ 12 апреля 2010

Я отслеживаю зависимости с помощью git-submodules в моем приложении rails. До сих пор я добавил субмодули для таких вещей, как, haml, shoulda и authlogic для «vendor / plugins» Я видел признаки того, что вместо этого я должен использовать «vendor / gems».

Вопрос: какой каталог является подходящим местом для размещения зависимостей, отслеживаемых как подмодулей? Выбор произвольный?

Спасибо

Ответы [ 2 ]

2 голосов
/ 13 апреля 2010

Короче говоря, я бы использовал config.gems для всего, кроме исключений, которые я отметил ниже.

Это рабочий процесс, который я бы использовал:

  1. Все плагины / библиотеки, для которых существуют гемы для нужной мне версии, я делаю

    environment.rb

    config.gem "plugin_name", :version => ">=1.0.0"
    

    , то:

    rake gems:unpack:dependencies
    
  2. Все остальные плагины, которые я устанавливаю из исходного кода (Github и т. Д.), Которые я запускаю:

    script/plugin install github_url
    

    и плагин помещается в плагины вендора.

  3. Что касается субмодулей, я бы использовал субмодули только для плагинов / гемов, которые я активно разрабатываю или для которых я планирую использовать конкретные коммиты, а не для HEAD, и если я планирую изменить коммит я использую часто.

1 голос
/ 13 апреля 2010

Короткая версия - если это плагин, поместите его в вендор / плагины, если это драгоценный камень, он идет вендору / драгоценным камням. Однако нет необходимости отслеживать зависимости gem через субмодули - для этого достаточно просто настроить Rails. Итак, обычный шаблон таков: используйте config.gem для отслеживания зависимостей gem и git-submodules для зависимостей плагинов - и плагины всегда идут в vendor / plugins.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...