Я запускаю CMS и, как я сказал в комментарии, я настроил свой рабочий процесс с помощью manojlds.Я хотел бы расширить нашу реализацию в надежде помочь вам с пользовательским контентом.
Я установил gitolite в качестве нашего удаленного репозитория.Он качается.
Наша модель ветвления работает примерно так, с 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
, чтобы подтолкнуть к гитолиту.После этого прод-сервер pulls
и все довольны.
Это звучит как большая работа, но на самом деле это было очень эффективно, особенно после некоторого скриптового хука.Я все еще нахожусь в процессе настройки нашего развертывания (например, я могу почти полностью избавиться от ветки alpha
и отработать локально от dev/feature
), но мы получаем потрясающий бонус, фактически имея ежедневные снимкирабочий сервер и возможность синхронизации всех веток в любое время.
Кроме того, что касается вашей ветки master
- оставить это как обычную установку WordPress - это круто, потому что вы действительно можете протестировать обновления новой версии.без труда.Вы можете просто проверить мастер, затем запустить обновление и медленно интегрировать настройки.