Bu soruyu gönderiyorum çünkü bir çevrimiçi mağazanın tüm yönlerini yönetmek isteyen biri için en iyi geliştirme iş akışının ne olduğunu bilmek istiyorum.
Elbette tüm web geliştirmelerinde olduğu gibi, tüm yazılım çözümünün canlı bir kopyasına ve en az bir geliştirme kopyasına sahip olmak elbette çok önemlidir. Ancak Magento malzemelerini yönetmek, diğer "dosya tabanlı" yazılımları yönetmek gibi değildir, çünkü oyuna giren bir veritabanı bileşeni de vardır, bu yüzden Git gibi bir aracı kaynak kontrolü için VCS aracı olarak kullanabilmemin yanı sıra, Canlı ve geliştirme sürümleri arasındaki veritabanındaki farklılıkları yönetmeye devam ediyorum.
Tabii ki cron aracılığıyla canlı veritabanının yedeklerini yapabilir ve SQL INSERT ifadelerini yedeklemeden kaynak kontrolüne ekleyebilirim, ancak bundan sonra müşteriler canlı veritabanına giren bir yandan sipariş verirken ve sipariş verirken iki veritabanı ayrı olarak gelişecek ve çünkü geliştirme veritabanında ayrı olarak güncelleme yapılır. Geliştirme ve canlı sürümleri birleştirmeye gelince, php dosyaları git üzerinden güncellenebilir (veritabanı yapılandırma ayrıntılarını barındıran tek dosyada gitignore kullanarak), ama veritabanı dosyaları ne olacak? INSERT SQL ifadeleri içeren iki dosyayı bir felakete neden olmadan ve sistemi harap etmeden iki yedeklemeden nasıl birleştirebilirim?
Magento geliştirme yaşam döngüsünün gölgeli alanı, karşı karşıya olduğum: veritabanı farklılıklarını yönetmek.
Bana öyle geliyor ki, Magento mağazasının geliştirme / test etme ve canlı sürümleri arasında farklılık gösteren veritabanı içeriğini senkronize etmenin tek çözümü, Magento Yönetici Paneli aracılığıyla geliştirme sürümünde yapılan tüm değişiklikleri bir kağıda yazmak, ve herhangi bir hata yapmamayı umuyoruz ve daha sonra her şey test edildikten ve dosyalandığında, canlı sürüme geçmek ve Magento çevrimdışı olduğunda ve bakım moduna geçirilirken aynı değişiklikleri yapmak için. Bu manuel bir işlem olduğundan, hataya eğilimli midir?
Peki, test magento sunucusu ile canlı magento sunucusu arasında veritabanı senkronizasyonunu işlemenin en iyi yolu nedir?
Teşekkürler.