How do I update my production AND staging site?
When making changes to your staging AND production site, you might need to make updates in a few places, such as the theme files and/or your database. It depends what kind of updates you’re making!
If you’re just adding or updating new blog posts or pages, for example, you can make those changes right on the production (aka the live) site. Or you can make the changes locally and export new posts or pages from the local site via the Importer plugin (with an XML file) and upload them to production that way.
Oftentimes you will only be making changes to the code files, so all you will need to do is push via Git to your staging site for QA and then to production.
The rule of thumb is that the database for your production site should always be the authoritative database, the one that is right and true and where you make the majority of your changes. But, it’s not as simple as that. You will sometimes need to test code changes locally that involve adding content or settings, etc., to the database. Database changes require an export/import via SQL. You'll want to import the database and push up new or revised files to staging first for QA before deploying to production.
And always make a backup first! :)