Intereting Posts
Нельзя использовать pre_set_site_transient_update_themes из темы в многопользовательском режиме Остановить wordpress от отправки сообщений модерации Изменение префикса www в общих настройках и внутренних ссылках jQuery | JJ Карусельный плагин – Невозможно установить скорость Как сохранить экземпляры виджета WP и параметры Скрыть миниатюру, если на странице есть галерея Как связать подменю Custom Post Type с страницей Gallery Nextgen? Показать сообщения из той же категории, используя следующую / предыдущую ссылку Кто-нибудь знает плагин, который превращает «сообщение» в информационный бюллетень html? add_action ('wp_ajax_ ', myfunction) проблема WordPress, созданный в пользовательских полях, не проверяет и не дезинфицирует? Есть ли способ исправить это? Как предотвратить фатальную ошибку PHP, если плагин не был включен и вызван метод в файле темы? Использование get_option () в JavaScript Как сделать enqueue js-файл в functions.php для инструкции if lt IE 9? Есть ли способ заставить дочерние должности наследовать условия родительского поста?

Хранение базы данных WP синхронизировано между несколькими разработчиками, использующими git

Я работаю над улучшением своего рабочего процесса git, поскольку он применим к моим проектам разработки WordPress. Часто при разработке системы управления контентом я создам сервер разработки (например, http://dev.finalsitename.com ), содержащий пользовательские типы сообщений и таксономии, которые будут использоваться в производственной версии. Это позволяет моему клиенту начать добавлять свой контент на сайт.

Пока они работают над этой задачей, я обычно строю внешний вид, а также настраиваемые программы / плагины, которые будут использоваться в моей локальной среде. Чтобы я не перезаписывал ни одно из своих обновлений, я обычно извлекаю копию своей базы данных и заменяю мою. Однако есть моменты, когда мне просто нужно прыгать в область администрирования WP и изменять настройку или что-то еще маленькое …

Если в проекте WordPress работает несколько разработчиков, каждый из них делает дамп базы данных (timestamped) нашей версии сайта и включается в корневой каталог, прежде чем совершать и перенаправлять их локальное ветвление обратно в удаленный репозиторий. Проблема с этим подходом заключается в том, что базы данных часто не синхронизируются с простым способом определить, что использовать.

Что другие разработчики делают для синхронизации своих баз данных, одновременно позволяя нескольким разработчикам (и клиентам / продюсерам контента) работать над одним и тем же проектом?

Solutions Collecting From Web of "Хранение базы данных WP синхронизировано между несколькими разработчиками, использующими git"

Есть 3 варианта из самых простых ->

  1. Используйте только одну удаленную базу данных, с которой вы все подключаетесь, с большим количеством резервных копий. Таким образом вам просто нужно беспокоиться о файлах, а не о db.

  2. Используйте функции импорта и экспорта, встроенные в WordPress, и передайте их в свой контроль версий прямо в корень wp (как в новой папке). Конечно, это занимает несколько минут, но его мертвые просто и вы можете автоматизировать его, но что более важно, он станет частью контроля версий.

  3. Используйте специальный скрипт для обновления фактической синхронизации базы данных. Я, честно говоря, не знаю, как вы можете справиться с git, потому что это просто сценарий и не знает, что происходит, я знаю, что есть сторонние инструменты, которые делают это коммерческое и бесплатное ( http: // www. Liquibase.org/ ).

Если вам нужно полностью синхронизировать базы данных, т.е. схемы и данных, вы можете создать собственную систему управления версиями на основе резервных копий.

Или, если вы хотите сохранить данные из производства, но разработать свою схему, вы можете работать с пользовательским решением (версией файла со всеми изменениями схемы) или стандартным решением, основанным на концепции migration . Вы можете найти много информации в этом потоке stackoverflow: Механизмы для отслеживания изменений схемы db .

Мне жаль, если это кажется невероятно очевидным, но если вам все нужно иметь ту же копию базы данных с той же структурой, не имеет смысла иметь офис / центральный SQL-сервер и использовать это? Скопируйте его локально, если вам нужно поэкспериментировать, но сохраните его в качестве стандартного стандарта defacto и возьмите резервные копии этого сервера и только этого сервера.

В противном случае, когда я работаю над групповым проектом, у нас есть собственные настройки с различным контентом. Код заботится об обновлении и перенастройке структур таблиц, и мы можем получить доступ к локальным установкам локализации кода, который выполняется на наших компьютерах по локальной сети, поэтому нам не нужно обмениваться контентом.

Если мы вводим контент, мы запускаем его на тестовом сервере, который мы можем либо экспортировать, либо импортировать на живой сервер, либо мы можем перейти непосредственно на производственный сервер, если в настоящий момент нет реального экземпляра.

Если в какой-то момент вам необходимо провести разделение живых тестов и данных WIP, тогда просто используйте ветвь live, test и development в вашем репозитории