Kami menulis skrip untuk menangani dump DB untuk percabangan. Baca artikel ini .
Prinsip dasarnya adalah bahwa ia membaca local.xml
untuk mengambil kredensial DB, kemudian membuang data atas dasar itu. Membagi dump menjadi dua bagian, struktur saja dan kemudian data. Tetapi kuncinya adalah mempercepat proses pembuangan konvensional dengan melewatkan data yang tidak penting , dan yang paling penting mencegah setiap kunci tabel selama dump yang akan memblokir / menggantung situs langsung Anda.
Ketika Anda mendapatkan dump MySQL, Anda dapat mengubah URL dengan sangat mudah hanya dengan menggunakan sed
sed -i 's/www.mydomain.com/staging.mydomain.com/g' ./var/db.sql
Kemudian jalankan impor mysql ke DB baru Anda.
Jadi tanpa skrip, versi yang sangat mendasar akan terlihat seperti ini.
mysqldump -hHostname -uUsername LiveDbname -p > db.sql
sed -i 's/www.mydomain.com/staging.mydomain.com/g' db.sql
mysql -hHostname -uUsername DevDbname -p < db.sql
Tidak ada alasan sama sekali untuk menghapus file local.xml, atau menjalankan kembali installer jika Anda mengubah URL dalam DB dengan cara ini.
Seluruh proses percabangan tercakup dengan baik dalam Panduan GIT Magento kami . Ini adalah proses yang baik untuk membuat cabang pengembangan, tetapi tidak mengecilkan DB langsung dengan margin yang signifikan. Jadi tes tidak akan sepenuhnya sama dengan di situs langsung.
Jadi melakukan dump DB vanilla, dan ganti, impor DB sudah cukup untuk situs pementasan. Dan akan mencerminkan / mencocokkan situs langsung sedekat mungkin.
Dalam hal mencegah komunikasi dengan pelanggan - kami tidak pernah menganggapnya sebagai keharusan, karena kami selalu membuat akun dengan sengaja untuk pengujian, tidak pernah menggunakan pesanan pelanggan nyata untuk pengujian.