How to transfer changes from test environment to live site?

I don’t think you will find any comprehensive or easy answer for this. I think the way you already broke down the various aspects of your installation is the key – i.e., thinking of changes to files as different from changes to the database.

Most of the changes I make are at the file level – e.g., CSS, adding code for a hook, stuff like that. They are isolated in files, as you said.

For the changes I make which affect the database, they tend to be compartmentalized as plugins, so they are also easy to isolate and deploy or rollback as long as I keep track of what steps I am taking.

Since you seem more concerned about your database changes, do you have a particular change or type of change that you want to discuss? You could consider doing a MySql dump of both the test and live database and then using a file diff tool to find the differences. In many cases this would probably let you extract a few SQL commands that could be packaged into a deployment script (but this could involve a fair amount of understanding about the underlying database to be sure to get the script right).

Leave a Comment