2010-04-12 2 views
3

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

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

Благодаря

ответ

2

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

3

Короче говоря, я бы использовал 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, и если я планирую изменить фиксацию Я часто использую.

Смежные вопросы