Disclaimer: Buddy.Works is a tool that helps developers automate tests and deployments of their applications. In this article we’d like to compare the most common delivery workflows for PHP projects—and try to figure out which one is the best. PHP delivery overview Each single application differs one from another, just like the delivery process. The most frequent steps for delivery usually look like this: PHP Test app Download dependencies ( ) Composer Compile assets (Gulp/ / ) Webpack Grunt Deploy to server Of course, more actions can be undertaken here. For instance, you may want to migrate the databases or restart your server via SSH — all of it depends on the project specifications and hardware that is used. 2 important things Before we go further, there are two things that should be highlighted every single time the word “deployment” comes into play: I. Keep everything in version control! Application source, configuration files, documentation, db migration scripts —you should keep all of it safe and sound in the repo. Of course, there are exceptions to every rule (especially in IT), which brings us to the second rule: II. Never keep dependencies and compiled apps in version control! We explained the reasons why this shouldn’t be done . Let’s call in the reason that frightens the developers the most (apart from being treated like a by their family). here 24/7 IT service If you want to find out more, check our guide at: Buddy Guide - 5 ways to deploy PHP applications