Saya memposting pertanyaan ini karena saya ingin tahu apa alur kerja pengembangan terbaik untuk seseorang yang ingin mengelola semua aspek dari toko online.
Seperti halnya semua pengembangan web, memiliki salinan langsung dan setidaknya satu salinan pengembangan dari seluruh solusi perangkat lunak tentu saja sangat penting. Namun mengelola hal-hal Magento tidak seperti mengelola perangkat lunak "berbasis file" lainnya karena ada juga komponen database yang ikut berperan, jadi, selain fakta bahwa saya dapat menggunakan alat seperti Git sebagai alat VCS untuk kontrol sumber, bagaimana caranya Saya ingin mengelola perbedaan dalam database antara versi langsung dan pengembangan?
Saya tentu saja dapat membuat cadangan dari database langsung melalui cron, dan memasukkan pernyataan SQL INSERT dari cadangan ke kontrol sumber, tetapi setelah itu dua database akan berkembang secara terpisah sementara pelanggan mendaftar dan memesan di satu sisi yang masuk ke database langsung, dan karena pembaruan dibuat ke database pengembangan secara terpisah. Ketika akan datang untuk menggabungkan versi pengembangan dan hidup, file php dapat diperbarui tanpa masalah melalui git (menggunakan gitignore pada file tunggal yang meng-host rincian konfigurasi database), tetapi bagaimana dengan file database? Bagaimana saya bisa menggabungkan dua file yang berisi pernyataan SQL INSERT dari dua cadangan tanpa menyebabkan bencana dan merusak sistem?
Ini adalah area teduh dari siklus pengembangan Magento yang saya hadapi: mengelola perbedaan basis data.
Bagi saya, sepertinya satu-satunya solusi untuk menyinkronkan konten basis data yang berbeda antara versi pengembangan / pengujian dan versi langsung dari toko Magento adalah dengan menuliskan di selembar kertas semua perubahan yang dibuat dalam versi pengembangan melalui Panel Admin Magento, dan berharap untuk tidak membuat kesalahan, dan kemudian setelah semuanya diuji dan bekerja file, untuk pergi ke versi live dan melakukan perubahan yang sama persis saat Magento offline dan dimasukkan ke mode pemeliharaan. Karena ini adalah proses manual, apakah rawan kesalahan.
Jadi, apa cara yang lebih baik untuk menangani sinkronisasi basis data antara server tes magento dan server live magento?
Terima kasih.