A git branching model

This is a git branching model I've used in a few organizations.

It's not a new approach, but since I can't find it described in detail elsewhere on the web I'll share it here.

It's halfway between GitHub flow and Gitflow in terms of the number of operations involved.

release branches(long lived, deployed)feature/fix branches(short lived)main branch(long lived)v0.2.0feature/fixv0.1.0fixfeature/fixhotfixAfter stabilizationperiod, deploy v0.1.0[0]After hotfix, deploypatch v0.1.1New minor/majorreleases get newrelease branchesbranch cutGit Branching Model[0] Changes merged to release branchesduring stabilization are termed backports,changes after are termed hotfixesNotesLegend(vertical)Branch(diagonal)New branch created,or branch mergedCommit

Thanks for reading! Go home for more notes.