Вопрос по обновлениям с учетом пользовательских модификаций
Доброго времени суток!
Помогите навести порядок в голове. Сейчас есть интернет-магазин, работает на продакшн-сервере.
Допустим, есть тема дизайна, которая была давно куплена в инсталлере, но как и бывает в любом интернет-магазине, она уже была значительно модифицирована. Также мы имеем дев-сервер (например, виртуалка vagrant). Там у нас крутится почти точная копия сайта, только в режиме debug=true. Там мы внедряем новые фичи для темы, фиксим баги. Ну, все как у всех.
Вопрос №1: как это все выкатывать на production? Да, есть вариант скачать архив с темой, и залить на прод. Но самый ли это удобный вариант? Программисты - линивые существа, они все автоматизируют. Можно создать закрытые репозиторий, откуда тянуть все это дело. Годный вариант?
Вопрос №2: если автор темы выкатывает крупное обновление, есть ли вариант сделать какой-то merge, чтобы не убить свое, но и внедрить улучшения от автора темы?
Вопрос №3: какая вообще хорошая практика обновляться на webasyst сохраняя при этом собственные изменения в темах/плагинах? Если честно, открывать файлик изменений и копипейстить нужные строки - это жесть.
Вопрос №4: если речь идет о фронтенде, можно ли как-то реализовать следующий функционал: для фронтенда, плагин будет использовать свои шаблоны только в том случае, если в папке с текущей темой (или wa-data/public/shop/plugins/) нету папки с именем плагина, где хранится модифицированная копия шаблонов (представления) плагина. Т.е., допустим ставим мы плагин обратного звонка, переделываем его (изменения пишутся в папку, которая при обновлении не будет затронута, это некое представление (view) которое отделено от бизнес-логики), затем обновляем плагин, при этом наше представление остается нетронутым. Нечто подобное есть в Prestashop, Opencart, Wordpress.
Проясните. Спасибо!
1 ответ
Четвертый пункт вот тут обсуждался.