Я запускаю CMS, и, как я сказал в комментарии, я получил настройку рабочего процесса с помощью manojlds. Я хотел расширить нашу реализацию в надежде помочь вам с созданным пользователем контентом.
Я устанавливаю гитолит как наш удаленный репозиторий. Это круто.
Наша ветвление модель работает как так, с WordPress в качестве контекста:
master - # this is the _vanilla_ install of wordpress with no modifications
prod - # the branch that the production server pushes/pulls to
dev - # dev environment pushes/pulls to, in our case a server
alpha - # really early development, ideas, etc - my personal branch that i work on mostly
features (opt) - # as needed, I'll make feature branches then merge them into the other branches.
Наша прод, который обрабатывает около 40-45 различных статических файлов в день, имеет хрон, который автоматически добавляет/обязывает пользователя изменен файлов и данных на ежедневной основе. Это забирает все пользовательские изменения и будет (в вашем случае) забирать установки плагинов. Это здорово, потому что у вас есть история об их установках.
Фактические изменения в кодовой базе обычно изучаются в альфа, а затем объединены до dev. Мы создали несколько перехватчиков, где, когда мы push
в ветвь dev, dev-сервер автоматически pulls
новый фиксатор в. Затем они синхронизируются.
После того, как он был протестирован в среде разработки, я синхронизирую свою локальную производственную ветку с пультом дистанционного управления, которая, как указано, ежедневно получает пользовательский контент. Затем я буду merge
или cherry-pick
совершить в продукт, затем push
, чтобы получить на гитолите. После этого сервер prod pulls
и все счастливы.
Это звучит как много работы, но на самом деле это очень эффективно, особенно после некоторых скриптов на крючке. Я все еще в процессе настройки нашего развертывания (например, я почти полностью избавляюсь от ветки alpha
и работаю с dev/feature
локально), но мы получаем потрясающий бонус, фактически имея ежедневные снимки производственного сервера, и возможность синхронизации всех ветвей в любое время.
Кроме того, в отношении вашей ветви master
- оставляя это как установку ванили для WordPress, это потрясающе, потому что вы можете легко протестировать обновления новой версии. Вы можете просто проверить мастер, затем запустить обновление и медленно интегрировать настройки.
Разве это не проблема безопасности, поскольку у вас есть сторонний код, который вы возвращаете обратно в свое репо как * * хорошую копию? –