Should you still use Gitflow?
Whether Gitflow itself was still relevant was easily the most polarizing discussion in the comments of my last video. So here is my answer to the question of should you still use Gitflow?
The short answer
No.
The longer answer
Gitflow still has a place, depending on the kind of software you ship and what your pipeline looks like. If you deploy in a waterfall model, explicitly version packages or releases, work on a fixed release schedule, or support multiple versions of your software in the wild, Gitflow may still be a good branching model.
Where it is not so good is a continuous deployment pipeline where merge conflicts are more common than they would be under a simpler model like GitHub flow or plain feature branching.
You don’t always get to choose
When you join a software team you adapt to the branching and deployment models already in place. Gitflow is really just creating and merging branches in a specific order, and those are Git skills that transfer to any branching model.
The original author of Gitflow put the polarization well in his original blog post, and I agree with his conclusion:
…panaceas do not exist, consider your own context, don’t be hating, and decide for yourself.
Going further
- Gitflow explained walks through how the Gitflow model actually works.
- Vincent Driessen’s original post is still a great in-depth reference, with diagrams and code samples.
