In our WordPress development workflow, we clone the production site for dev. But by the time you are done with the development, the client creates new posts, new Woocommerce orders come in or other changes happen in the live site. Now you have 2 copies that have to be merged without losing the changes in either of them. Now you have a few choices – You could have noted down all changes made in the dev site and meticulously redo them on the live site. Or, you can copy changed rows from the dev site and re-run the queries again on the live site. But the problem with this is, when the new data came in, they would have re-used the same IDs used in the dev site, creating a conflict. Or, with currently available tools, you can move the dev DB over to the live site. But you’d lose the vital changes like comments or orders that happened on the live site during development. None of them make for an ideal deployment workflow.
We wanted to change this and that’s exactly why we built an intelligent, automated database merging plugin that merges changes on the dev site to the live site without over-writing the changes made to the live site since cloning. It will handle creating new IDs, replacing old ones and also serialized post IDs intelligently.
How it works
- Before starting development, you have to clone the Production site using any tool of your choice.
- Now you have a production site and it’s clone, the development site. Install the WPMerge plugin on both prod and dev sites and connect them.
- WPMerge is now ready for you to start development. As you make changes in the dev site, WPMerge will record them.
- After development is finished, sync the current prod DB with the dev DB and apply all recorded changes to the dev DB.
- Download new and modified files and upload them.