У нас есть код, контент и поток БД, который следует типичному шаблону:
Dev-> Build-> Staging-> Prod
Самое интересное в том, что клиент редактирует и публикует контент только в Prod.
Таким образом, наша текущая стратегия состоит в том, чтобы попытаться выполнить полную синхронизацию контента Prod-> Staging на полурегулярной основе, а затем полную синхронизацию Prod-> Build / Dev на специальной основе. Выполнение толчка Prod-> Build / Dev означает, что среда непригодна для использования в течение определенного периода времени (по крайней мере, день).
Какие существуют стратегии, чтобы убедиться, что ваши среды разработки / тестирования / сборки точно соответствуют продукту с точки зрения содержания, и как другие решают эту проблему?
Мы используем Sitecore 6.1 в качестве системы CMS.
Я регулярно использую SDL Tridion, и в типичном сценарии есть Dev, Test, Acceptance и Production. (Некоторые люди называют это DTAP.) В каждой из этих сред у вас есть промежуточный веб-сайт и веб-сайт Live. (Такие слова, как Staging, используются для слишком многих вещей, но терпите меня.) Люди, занимающиеся контентом, используют промежуточный веб-сайт для проверки своего вывода перед публикацией его на действующем сайте, который будет виден посетителям из Интернета.
Для группы контента типично работать только в производственной среде, поэтому, как вы говорите, полезно вернуть производственный контент в другие среды. Я обычно прошу их вернуть копию базы данных и, где возможно, иметь набор скриптов для исправления любых различий, которые необходимы между средами. Если ваша система не будет использоваться в течение дня, это, вероятно, слишком сильно повредит. Я предлагаю вам посмотреть, почему это занимает так много времени, и принять меры, чтобы сократить это время.