Я пишу этот вопрос, потому что мне хотелось бы знать, какой рабочий процесс лучше всего подходит для тех, кто хочет управлять всеми аспектами интернет-магазина.
Конечно, как и во всех веб-разработках, очень важно иметь действующую копию и хотя бы одну копию всего программного решения. Однако управление Magento не похоже на управление другим «файловым» программным обеспечением, потому что в игру вступает и компонент базы данных, поэтому, помимо того, что я могу использовать такой инструмент, как Git, как инструмент VCS для управления исходным кодом, как бы Я занимаюсь управлением различиями в базе данных между живой и разрабатываемой версиями?
Конечно, я мог бы создавать резервные копии действующей базы данных через cron и вставлять операторы SQL INSERT из резервной копии в систему контроля версий, но после этого две базы данных будут развиваться раздельно, в то время как клиенты будут регистрировать и размещать заказы с одной стороны, которые поступают в оперативную базу данных, и так как обновления вносятся в базу данных разработки отдельно. Когда дело доходит до слияния версий разработки и живых версий, файлы php можно без проблем обновить с помощью git (используя gitignore для одного файла, в котором хранятся детали конфигурации базы данных), но как насчет файлов базы данных? Как объединить два файла, содержащие операторы INSERT SQL, из двух резервных копий, не вызывая сбоев и не разрушая систему?
Это теневая область жизненного цикла разработки Magento, с которой я сталкиваюсь: управление различиями в базе данных.
Мне кажется, что единственное решение для синхронизации содержимого базы данных, которое отличается между версией разработки / тестирования и действующей версией магазина Magento, состоит в том, чтобы записать на лист бумаги все изменения, сделанные в версии для разработки, через панель администрирования Magento, и надеемся, что не будем делать никаких ошибок, а затем, когда все будет проверено и обработано, перейдите к живой версии и выполните те же самые изменения, пока Magento переводится в автономный режим и переводится в режим обслуживания. Поскольку это ручной процесс, он подвержен ошибкам.
Итак, что является лучшим способом для синхронизации базы данных между тестовым сервером magento и действующим сервером magento?
Благодарю.