Подтвердить что ты не робот

Вы добавляете public/assets в управление версиями?

В rails 3.1, когда вы прекомпилируете активы, рельсы создают каталог public/assets и добавляют туда файлы.

Вы контролируете версию public/assets/*?

4b9b3361

Ответ 1

Я тоже искал ответ. Я нашел, что официальный Rails Guide имеет некоторые мысли по этому поводу:

http://guides.rubyonrails.org/asset_pipeline.html#local-precompilation

Вот цитата из соответствующего раздела (выделено мной):

Существует несколько причин, по которым вы, возможно, захотите предварительно скопировать свои активы локально. Среди них:

  • Возможно, у вас нет доступа для записи в вашу файловую систему.
  • Возможно, вы используете более одного сервера и хотите избежать дублирования работы.
  • Возможно, вы часто занимаетесь развертыванием, которое не включает изменения активов.

Локальная компиляция позволяет компилировать файлы в исходный элемент управления и развертывать как обычно.

Существует три оговорки:

  • Вы не должны запускать задачу развертывания Capistrano, которая прекомпилирует активы.
  • Вы должны убедиться, что в вашей системе разработки имеются любые необходимые компрессоры или minifiers.
  • Вы должны изменить следующий параметр конфигурации приложения:

В config/environments/development.rb поместите следующую строку:

config.assets.prefix = "/dev-assets"

Изменение prefix заставляет Sprockets использовать другой URL для обслуживания активов в режиме разработки и передавать все запросы на Sprockets. Префикс по-прежнему установлен в /assets в рабочей среде. Без этого изменения приложение будет обслуживать предварительно скомпилированные активы из /assets в разработке, и вы не увидите никаких локальных изменений, пока вы снова не скомпилируете активы.

На практике это позволит вам прекомпилировать локально, иметь эти файлы в рабочем дереве и при необходимости передавать эти файлы в исходный код. Режим разработки будет работать, как ожидалось.

Итак, похоже, было бы неплохо поместить предварительно скомпилированные активы в VCS.

Ответ 2

Я использую Capistrano для развертывания. Последний шаг заключается в компиляции активов. Ничего подобного не проверяется в контроле версий.

https://github.com/capistrano/capistrano/wiki/Documentation-v2.x

Проверка скомпилированных активов, файлов .gz/etc, просто загромождает управление версиями.