Salah satu cara yang baik untuk melacak perubahan skema di beberapa cabang proyek pengembangan adalah dengan mengikuti pemfaktoran ulang basis data proses. Di antara manfaat lainnya, proses semacam ini menggabungkan penggunaan delta dan skrip migrasi untuk menerapkan perubahan skema ke setiap lingkungan (atau cabang dalam kasus Anda). Pengaturannya bisa terlihat seperti ini:
main
src <-- ASP.NET project source
db <-- Database create scripts
delta <-- Database change scripts (SQL delta files)
branch
src
db <-- usually has the same contents as the copy in main branch
delta <-- only the changes necessary for this branch
Setiap kali Anda perlu mengubah skema database untuk cabang tertentu, Anda membuat skrip delta SQL yang digunakan untuk menerapkan perubahan. Untuk membuatnya lebih mudah, saya sarankan untuk menamai setiap file skrip untuk menyertakan tanggal dan waktu pembuatan agar tetap berurutan. Contohnya adalah:
201102231435_addcolumn.sql
201102231447_addconstraint.sql
201103010845_anotherchange.sql
Tambahkan file delta ke kontrol sumber di cabang tempat perubahan skema perlu dilakukan. Anda harus berakhir dengan setiap cabang yang berisi persis apa yang diperlukan untuk mengubah database yang sesuai. Beberapa detail mungkin perlu disesuaikan untuk situasi Anda tergantung pada hal-hal seperti skema percabangan Anda dan apakah database Anda dipertahankan atau tidak selama proses rilis Anda (bukan dibuat ulang).
Akhirnya, untuk mencoba dan membuat konsep ini sederhana, saya akan merekomendasikan alat untuk membantu mengelola prosesnya. Saran saya adalah untuk melihat DBDeploy / DBDeploy.NET . Saya dengan senang hati menggunakannya selama bertahun-tahun di semua proyek saya.