Managing releases using Git tags and semantic versioning

A presentation at Longhorn PHP in in Austin, TX, USA by Michael Miles

Releasing code into a production environment is a process teams want to make sure is repeatable, easy to execute and even easier to track. If a release is not easily identifiable or annotated it is hard for teams to know exactly what changes were released, how major the changes were and who made those changes. Worse yet, if a release needs to be rolled back and is not properly documented a team needs to spend a lot of time figuring out how to revert the changes and get production back up and running.