Organizing a team of editors, developers, and designers is never a simple task. Trying to keep track of what each of them is doing on your WordPress site can seem all but impossible.
What if someone makes a mistake and your entire website goes down? You won’t know what happened, who did it or likely have any way of rolling back without losing days or weeks of work. That is, unless you use version control.
WordPress version control allows you to track everyone’s individual actions and changes on your site. It also allows you to store previous versions of each file that you can revert to at any time. Should something go wrong, you now have an undo button and a comprehensive log to help you figure out what happened and get back on track.
Want to try out this amazing resource for yourself? We’ll show you some great plugins for setting up WordPress version control and teach you how to use them effectively. Let’s go.
What is WordPress Version Control?
In the world of software development, version control tools are a popular choice to track changes to documents and files. Used by teams small and large, it provides a way to keep up with every modification made to a file or any part of the code.
Development teams that don’t use version control software will quickly run into issues. Concurrent changes might vanish or mistakes happen that require painstakingly combing through the code to fix. They might also struggle to branch out existing code to test new ideas or merge changes. It also becomes impossible to keep an eye on everyone’s individual contributions.
But version control isn’t just for software projects; it can also apply to a CMS like WordPress. In this case, it can track changes to core files, modifications to posts and pages, and plugin and theme updates. You can also deploy those changes to WordPress without manually uploading them via FTP.
And if anyone makes a mistake or touches something they weren’t supposed to, all you have to do is revert that change, and your site should be back to normal. It’s like a more intricate version of site-wide backups.
By default, WordPress does come with a pretty robust version control system for posts and pages. That will do if you’re only bringing on editors and content writers. However, if your team consists of developers, designers, admins, or anyone with heightened privileges, the simple post revisions system won’t be enough.
To track and roll back changes for files, databases, site updates, plugins and themes, you’re going to need something more.
Why Use Version Control?
You might say that you’d never hire a developer you don’t trust, or that you can manage what everyone does without any special software. Yet, mistakes can happen, employees can get upset and decide to take down your site on the way out. In addition, even small teams can become just too much to keep track of.
Version control software safeguards against problems like these. It lets you see exactly where and when changes happened, and revert them before too much harm is done.
Even in less serious situations, sometimes you may just decide that a recent change isn’t to your liking. Instead of diving back into your site files, you can just click “roll back”. No need to upload anything by hand.
Lastly, it just makes it easier to work in teams. Being able to see a list of changes and who made them is more beneficial than you might think.
This also applies if you’re working solo. Instantly revert any mistakes you made, view past versions of old files, and easily pick up where you left off. It makes life so much easier.
Learning Git and Using it with WordPress
While other version control systems exist, a majority is based around Git. It’s primarily a tool for programmers, but most WordPress version control plugins rely on it as well.
Git is quite simple and fairly easy to get the hang of once you dive into it. It’s also the most-used system by far, so it’s definitely what you want to put time into learning.
Also, GitHub is a major host for Git-based projects, including WordPress itself – and it boasts over 38 million users. Consequently, by learning Git, you also get access to a reliable repository to sort and track changes to your project.
With that said, Git can be pretty confusing at first. For that reason, here are some helpful resources to help you get the hang of things.
- How To Use Git For WordPress Development — Check out our beginner tutorial that walks you through the entire configuration of Git for WordPress.
- Git Handbook — Where better to learn Git basics than from GitHub itself? Once you’re done reading, you should also try their Hello World project to test you knowledge.
- git – the simple guide — This simple guide by Harvard lays out the basics in terms anyone can understand.
- Backlog Git Tutorial — This set of tutorials has a friendly, easy-to-read design and covers several Git-related topics across multiple skill levels.
- An Intro to Git and GitHub for Beginners — Made for beginners, this guide walks you through Git’s major features and helps you get the hang of GitHub.
The Best WordPress Version Control Software
Once you’ve got a pretty good grasp on Git, you’re just about ready to try out WordPress version control software. There are quite a few top contenders out there, each with their own unique set of features. You will find them below.
Note, however, that the server requirements of Git-based software can be quite finicky. Make sure to check the documentation of each plugin to see their requirements, and ensure that your host meets them. Sadly, shared hosting doesn’t usually have the necessary permissions for these plugins to work. However, there are a few alternatives below that are more lenient.
VersionPress is perhaps the most well-known version control software for WordPress. It brings the full functionality of Git to WordPress – and does it all for free.
The big thing here is that it tracks not just file changes, but database edits as well. Beyond that, it integrates with GitHub, automatically commits any changes, and can smush whole snapshots of your site into just a few megabytes. It’s fast, it’s efficient, and it does its job well.
The one major downside to VersionPress: it’s still in development, and not production-ready. While you can use it on your small, simple site without the likelihood of much going wrong, there are no guarantees. There’s always a chance your database could be corrupted if you don’t configure it correctly.
In any case, it’s good to keep separate backups of your database too. VersionPress is incompatible with most plugins that manipulate the database, so keep an eye out for that. It also doesn’t work with hosts that don’t have Git installed or have tight security restrictions.
If these downsides aren’t a deal-breaker for you, the free plugin is definitely worth a try.
Built for developers and small teams, Revisr comes with a simple, easy-to-use interface. It highlights modifications within files and simplifies difficult processes like switching branches or pulling data from repositories into just a few buttons.
There’s also some documentation to help you get set up. With Revisr, it’s easy to test out changes and quickly revert them if something goes wrong.
Because of its simplicity, the service is probably not suitable for huge teams of developers. However, it’ll work very well if it’s just you or a handful of others. The bad news: as of 2020, it hasn’t been updated in over a year, and there’s no word on what will happen in the future.
The whole tool is the work of just a single person and, therefore, slower development doesn’t necessarily mean it’s gone forever. But if you’re looking for something a little bigger and more actively maintained, Revisr may not be suitable.
Reverting any theme or plugin to a previous version is usually fairly annoying. You have to go hunt down the previous version, then manually upload and install it. This can cause a lot of downtime.
WP Rollback has a solution for that. The plugin lets you revert to a previous state in just a few clicks. It connects right to the WordPress repository and can pull any publicly available version of a theme or plugin right to your site.
This isn’t a traditional version control system and only covers plugins and themes. Yet, it does provide you with a quick undo button if things go wrong.
Made to simplify development, Gitium tracks everything done to your site, from removals to plugin/theme changes as well as any code edits. Its main focus is continuous deployment, or the ability to push code changes right to the live site without FTP.
Like VersionPress, it has some special server requirements. You’ll of course need a host that uses Git on its servers, and the
proc_open PHP function must be enabled. If you need help setting up Gitium, its documentation will help you get started.
The great thing about Gitium is that, unlike VersionPress, it claims to be suitable for use in production environments. The downside: it doesn’t work on multisite. If you need a stable version control plugin that won’t corrupt your database, give this one a try.
It’s no secret that team development in WordPress is hard. Git can help to share and collaborate on code, but pushing your themes, plugins, and code changes to an actual website eats up a lot of time. With WP Pusher, you can deploy right from Git to WordPress without the need to manually copy files over. It supports GitHub as well as Bitbucket and GitLab.
There are also quite a few other features that make it stand out. For one, it doesn’t require Git on your hosting server. WP Pusher also works on multisite, and is entirely free as long as you use public (open source) repositories.
What if you’re creating client projects that can’t be open source? You’ll need to purchase one of the yearly plans. The lowest one costs $99 per year and lets you deploy to up to five client sites. There are also plans that go up to a hundred.
If you work on themes, plugins, or in web development environments and constantly struggle to get your code somewhere you can test it, WP Pusher is the solution for you.
While this isn’t a traditional Git-based version control plugin, it performs a similar function in a much simpler interface. Activity Log tracks every action on your site, including the IP and profile of who did it and when. This lets you keep an eye on both your users and anyone who has admin access to your site.
The plugin tracks everything from post and page creation/deletion, tags, categories, and taxonomies, as well as user actions and setting/menu changes within the admin. All of it right in the WordPress dashboard.
It’s not suitable if you’re looking for a more development-focused plugin with features like continuous deployment and rollbacks. However, if all you want to do is track what happens, this plugin can be enough.
You might also want to check out the Simple History plugin. It works similarly to Activity Log, providing version history of almost every WordPress action possible right in the dashboard. It also has an API you can use to code and track custom events.
Track and Roll Back Any Change to Your Site
Especially when you’re dealing with code and function files, one little mistake can bring your whole website crashing down. Besides backups, a version control system can save you a lot of grief. Being able to restore the changes made and know who and what caused a mistake is a huge blessing. This is especially true when running a large website with several editors.
There are several well-known WordPress version control plugins, each of them providing their own unique features. We have listed the pros and cons above so you can choose the most suitable solution. Once you have wrapped your head around Git, these plugins allow you to make changes to your site with confidence.
Were you ever in a situation where version control saved the day? Share your story in the comments below!