Я ищу настройку развертывания для высоко настраиваемого сайта Magento и задавался вопросом, как это делают другие люди.Рекомендации по развертыванию Magento
Я буду настраивать среду разработки, UAT и prod. Все файлы Magento будут находиться в источнике управления (SVN). На этом этапе я не вижу никаких требований к изменению БД, поэтому 3 базы данных будут поддерживаться вручную.
В частности,
- Как применить обновления Magento? (Индивидуально в каждом env или на dev затем выкатывается или просто отказываетесь от апгрейдов?)
- Какие файлы/папки остаются в покое в каждой среде (например, magento/app/etc/local.xml)
- Do вы запрещаете разработчикам редактировать определенные файлы/папки?
- Вы ограничиваете дизайнеров темы редактированием определенных файлов/папок?
- Как вы управляете изменениями базы данных?
Theme Designer файлов/папок
Проектировщики могут ограничиваться редактирования следующих folders-
app/design/frontend/your_interface/your_theme/layout/
app/design/frontend/your_interface/your_theme/template/
app/design/frontend/your_interface/your_theme/locale/
skin/frontend/your_interface/your_theme/
Extension Разработчик файлов/папок
разработчики расширений могут редактировать следующие папки/Files-
/app/code/local
/app/etc/modules/<Namespace>_<Module>.xml
управления окружающей средой базы данных
В качестве базового URL магазина хранится в базе данных, вы не можете просто скопировать базы данных между средами. Варианты включают-
- Переопределение базового url в php. Blog article on setting up dev and staging databases
- Изменение базового url в базе данных после копирования. (Где хранятся?)
- Выполнение MySQLDump или резервное копирование, а затем замена на URL в файле SQL.
Возможно, вы захотите удалить «лучший ответ» снизу, так как он даже не отвечает на ваши основные вопросы. – Oddman
Справедливая точка. Я думаю, что этот ответ имеет большое значение, но он счастлив, что голосование решит вопрос о выдаче ответов. – Spongeboy
Не беспокойтесь - я просто рисую ответ, который на самом деле отвечает на вопрос, тот, который должен быть «лучшим ответом», независимо от голосов. Если ответ никоим образом не разрешает проблему, это не очень хороший ответ :) – Oddman