WordPress
Knowing What Changed and Being Able to Go Back
Last updated:
What goes in and what does not
| Include | Exclude |
|---|---|
| Custom theme | WordPress core |
| Custom plugins | Third-party plugins (usually) |
| Configuration files | Uploads directory |
| Build scripts | Credentials and keys |
| Documentation | Cache and log files |
Credentials in version control is the most common and most serious mistake here.
Why it matters for a business site
- You can see exactly what changed and when
- You can go back to a working version in minutes
- Two people can work without overwriting each other
- Deployment becomes a repeatable process rather than an FTP session
The value shows up on the day something breaks. Without history, you are guessing at what changed; with it, you can see.
Content stays in the database
Version control is for code. Content lives in the database and moves in the other direction — from live down to staging.
Trying to version content leads to conflicts nobody can resolve sensibly.
Deployment
- Deploy from the repository, not from a developer's machine
- Same process every time, documented
- A backup before deploying to live
- A verified way to roll back
It matters even for one developer
History and reversibility are useful with a team of one. The overhead is small and the first time you need to revert, it pays for itself entirely.
It also means a future developer can see what was done and why.
Frequently asked questions
Is this overkill for a small site?
For a site with no custom code, arguably. For anything with a custom theme, no — it is basic professional practice.
Should third-party plugins be included?
Usually not, unless you have modified them. Track versions in a dependency file instead.
What about the database?
Backups rather than version control. It changes constantly and does not merge sensibly.
Can we adopt it on an existing site?
Yes — commit the current state as a starting point and go from there. It takes an hour.
Site edited directly over FTP?
That works until something breaks. Version control takes an hour to set up and saves a day eventually.