Когда в процессе выпуска я должен минимизировать мои файлы CSS и JS? - PullRequest
2 голосов
/ 27 июля 2011

В настоящее время у нас очень простой (но эффективный) процесс выпуска. Мы помечаем новую версию в SVN. Эта версия будет экспортирована в тестовую среду. Оттуда мы rsync к среде принятия и оттуда к производству.

Теперь мы хотим начать минимизировать файлы CSS и JS. Я хотел минимизировать файлы в нашей тестовой среде в процессе выпуска Acceptance, чтобы как в среде Acceptance, так и в производственной среде мы минимизировали файлы. Однако, если я минимизирую файлы там, метки времени изменятся, и rsync будет каждый раз передавать ВСЕ файлы css и js, даже если минимизированный контент не изменился.

Мой вопрос таков: как лучше всего это решить? Должен ли я использовать механизм, отличный от rsync, для выпуска новой версии? Стоит ли ставить уже минифицированные версии в SVN? Но я не хочу, чтобы минимизированные файлы находились в разработке, так как лучше всего их минимизировать (и, возможно, объединить)?

Мы используем PHP 5.3.6, и я начал смотреть на Yui-компрессор, потому что я легко могу использовать его в скриптах.

1 Ответ

3 голосов
/ 27 июля 2011

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

Если вы используете программное обеспечение для сборки, такое как Apache Ant или Phing, этого будет довольно легко достичь. У них есть тесты специально для обнаружения изменений меток времени.

...