У меня только что был быстрый вопрос о том, как работает синхронизация конфигурации Drupal. Я работаю над большим сайтом на Drupal, где у меня есть несколько коллег, которые присоединяются к работе над проектом. Это сайт с контролем версий, на котором мы разрабатываем локально в Docker, а затем переносим изменения на веб-сервер.
Недавно я обнаружил, что в Drupal есть функция «синхронизации конфигурации». При внесении изменений на сайт (будь то просмотры, блоки и т. д.) пользователь может перейти на эту страницу, экспортировать свою конфигурацию в файл tar и импортировать в свою локальную настройку (или наоборот, из dev в prod).
Я многому научился, и это один из способов синхронизации среды Drupal.Но я смущен тем, как вступает в игру каталог синхронизации конфигурации (тот, у которого UUID сайта, который по умолчанию сохраняется в каталоге файлов). В локальной среде разработки в тестовой ветке я переместил эту папку, контролировал ее версию и изменил settings.php, чтобы указать на это новое место. Я заметил, что когда я вношу какие-либо изменения (скажем, представление), в папке синхронизации конфигурации не отображаются изменения. Если я перейду на экран синхронизации конфигурации, я увижу это сообщение:
Следующие элементы в вашей активной конфигурации имеют изменения с момента последнего импорта, которые могут быть потеряны при следующем импорте.
views.view.test_config_view
Я очень смущен, какова цель папки синхронизации конфигурации. Разве он не должен как-то обновляться при внесении изменений на сайт Drupal? Пробовал очищать кеш и все. Я подумал, что это будет правильный способ синхронизации изменений с несколькими людьми, работающими над сайтом (вместо использования экрана импорта/экспорта и создания файлов tar). Я также не понимаю, почему это заставляет меня синхронизироваться с последним выполненным импортом, даже если у меня есть более свежие изменения. Спасибо всем, кто может лучше объяснить это мне.