Now that we learnt how to perform good commits, it's time to fly higher and think of workflows. Git is a tool for versioning, but as with other powerful tools like knives, you can cut tasty sashimi or get hurt.
The thing that separates a great repository from a junkyard is the way you manage releases, the way you react when there is a bug to fix in particular version of your software, and the way you act when you have to make users able to beta-test incoming features.
These kinds of actions belong to ordinary administration for a modern software project, but too often I see teams out of breath because of the poor versioning workflows.
In this second part of the chapter, we will take a quick look at some of the most used workflows together with the Git versioning system.