Employing a responsible development process is an inherent focus at Pagely, one we advocate amongst our customers and the WordPress community at large. In this article, we’ll discuss the benefits of utilizing a version control workflow with a hosted Git repository to provide an optimal experience for developers.
So put away those finger pistols, Shooter McGavin! Gone are the days of the cowboy coder. Let’s dive into how we find our happy place in the WordPress development process.
WordPress Website Development Process
An organized and secure WordPress development process will consist of the following:
Local Environments Versioned with Git
By having your team perform their work in local environments versioned with Git, you greatly reduce the likelihood of unintended changes being pushed to your live site. Each member of your team can perform their work independently and, when using a CI/CD integration such as GitHub, will ensure everyone remains up to date in the relevant repository before committing their work.
You can learn more about local development environments in our Understanding and Utilizing Different WordPress Environments guide.
Deploying to a Staging Environment
Once updates have been committed to your hosted repository, you can use the 1-click Git deployment configuration to commit the updates to your staging instance.
The use of a staging environment allows your team the opportunity to review and modify the changes being made before pushing them directly to production.
An ideal staging environment will have its caches and CDN purged and rebuilt after deploying changes. Logging and error displays remain enabled so your team may work through issues and test before committing changes to production.
Follow our guide on how to create a staging environment to learn more.
Deploying to a Production Environment
At last, updates make their way to the production environment. This is where your main site lives and operates. This environment should be kept running clean and all contributions made up to this point should be well-tested from the prior development stages.
Configuring a production environment contrasts that of a staging environment, in that the caching/CDN remain enabled, while debugging and error displays remain disabled. This ensures the presentation and performance of your live site, since the task of testing and troubleshooting is offloaded by your staging instance.
We have found these general guidelines to be helpful in our own development journey, as well as those of our customers. If you’d like to learn more, see our various guides on deploying from version control.