Skip to main content

You are not logged in. Your edit will be placed in a queue until it is peer reviewed.

We welcome edits that make the post easier to understand and more valuable for readers. Because community members review edits, please try to make the post substantially better than how you found it, for example, by fixing grammar or adding additional resources and hyperlinks.

Required fields*

3
  • I'd say: "When in doubt, branch". It's not hard to merge or delete a branch if you didn't need one. It can be annoying to roll back or even cherry pick commits though if you didn't branch and your awesome idea doesn't really work out. Commented Jun 11, 2016 at 14:13
  • That answer you linked to was not specific to git, and is talking mostly about release strategy, i.e. long-running branches, not feature branches.Git makes branching and merging a lot easier than (say) SVN, and as long as you don't include the semantic overhead of a release with each (feature) branch, you're fine --- as long as those branches all get merged back into the master branch for the (same) release. Then, the feature branches can well be deleted and forgotten Commented Jun 22, 2016 at 21:18
  • @jpaugh Branching hell is the point when everyone loses track of which fix needs to go to which branches. This affects all version control systems equally, regardless of how easy branching or merging is. You are right that feature branches don't contribute to branching hell, at least until someone gets the bright idea to release from the feature branch. Reality is that there are lots of "if"s if you want to work with multiple branches, that's why the simple rule of thumb is to use few branches. Branching experts don't need the rule of thumb, because they know the many "if"s involved. Commented Jun 22, 2016 at 21:55