Git Branching: Don’t (Always) Follow the Best Practices

A debatable headline, I agree, but I will explain what it means and I hope that by the end of this short article, you will be equipped with enough parameters to chose your branching and versioning strategy and not make your decisions based purely on best practices.

Gitflow has become the de facto branching strategy for most, if not all, modern companies, and there is not a shred of doubt that it works wonders if properly adhered to. Gitflow is an exhaustive model that encompasses the branching needs of products following varied software development lifecycles, be it a bi-weekly release cycle or a half-yearly release cycle, and that is where my concern lies — it covers everything, and in my opinion, this 'one size fits all' branching model does not work in every situation. It can create process barriers and actually slow down the team.