Maybe this is a silly question, but I would like to know how you deal the update of an online website. I'll explain me better.
Suppose there's this website with daily added articles, comments, forum posts and so on. I would like to update the template, but this involves moving modules, changing titles, etc, etc...
And the template must be tested and personalized and this requires days, not hours. So in the meantime the website has changed. I cannot simply back it up locally, do the changes and update files via FTP and the database. I would lose data!
So far I've always done the work "twice": I take a backup, I do the changes and annotate every step I take, then (when I'm satisfied with the local version) I replicate the operation in the online website (hoping to spend the minimum time possible).
Is there a way to improve this procedure and be more productive?
Like a "work in progress" version of the website, better if accessible only to some users and that is kept synchronized with the "stable" version?
Then, the "work in progress" version should be "stabilized" in moments, like with a "one-click" operation.