Я публікую це запитання, тому що хотів би знати, який найкращий робочий процес у розробці для того, хто хоче керувати всіма аспектами Інтернет-магазину.
Як і у всіх веб-розробках, звичайно, наявність живої копії та принаймні однієї копії розробки всього програмного рішення, звичайно, дуже важлива. Однак керування матеріалами Magento не схоже на керування іншим "файловим" програмним забезпеченням, тому що є також компонент бази даних, який вступає в гру, тому, крім того, що я можу використовувати такий інструмент, як Git, як інструмент VCS для управління джерелами, як би Мені ідеться про керування відмінностями в базі даних між прямою та живою версіями?
Я, звичайно, міг би робити резервні копії живої бази даних за допомогою cron і вставляти операції SQL INSERT з резервної копії у керування джерелами, але після цього дві бази даних будуть розвиватися окремо, тоді як клієнти реєструють та розміщують замовлення на одній руці, які переходять у пряму базу даних, і по мірі того, як оновлення вносяться до бази даних розробок окремо. Коли мова піде про об'єднання розроблених і живих версій, файли php можна без проблем оновлювати за допомогою git (використовуючи gitignore для одного файлу, який містить дані про конфігурацію бази даних), але як бути з файлами бази даних? Як я можу об'єднати два файли, що містять заяви INSERT SQL, із двох резервних копій, не спричиняючи катастрофи та руйнуючи систему?
Це тіниста область життєвого циклу розвитку Magento, з якою я стикаюся: управління різницями в базі даних.
Мені здається, як єдине рішення для синхронізації вмісту бази даних, який відрізняється між розробкою / тестуванням та живою версією магазину Magento, - це записати на аркуш паперу всі зміни, внесені у версію розробки за допомогою Magento Admin Panel, і сподіваємось не помилитися, і після того, як все буде перевірено і запрацює файл, перейдіть до реальної версії та проведіть ті самі зміни, коли Magento буде знятий в автономному режимі та переведений в режим обслуговування. Оскільки це ручний процес, чи схильний він до помилок.
Отже, що є кращим способом керування синхронізацією бази даних між тестовим сервісом magento та сервером живого magento?
Спасибі.