I am busy reworking a reasonably large website that is already in Craft. The production site is updated with new content several times a day. My current work is an interface redesign. I have a local machine environment, and then a dev environment on the same server set up at the ISP alongside the live production one. The dev will function more as a test server - I can refresh from the production server a few times to test my update process.

My rework on the local dev environments starts with an exact site copy, and will involve mostly template changes. However I suspect I might need to do some database tweaks. In the meantime the live site will undergo a number of content changes.

I am wondering how best to deploy those database tweaks to the live dev and then production servers. My current strategy is to write down what changes I made in local dev and then manually make them on the main dev or live server. These seems a bit dumb unless it is just one or two. I can't copy the whole database because then I would overwrite content changes and I can't put a hold on content changes because my work is likely to take a week or three.

Thanks Andrew, that is very useful. I have a bit of homework and catching up to do with respect to processes. My half baked systems are workable (although perhaps not ideal) for small sites, but I need to up my game for the bigger ones :).
– Jack McKenzieApr 8 '18 at 1:51