2

I'm trying to understand why some teams use feature toggling if they are already using feature branching and trying to achieve continuous delivery. Let's say a team wants to achieve continuous delivery and can do that with help from either feature toggling or feature branching.

With feature toggling, there are the so called "release toggles" that can be implemented, allowing teams to release faster. If a feature is not ready and you're only using a master branch, you can toggle it and release the code.

It is almost the same story for feature branching. Here you can have, let's say, 3 features in development and one is done already. The company then wants the team to deploy to production. They pick only that feature and merge it and release.

I've seen that some teams are using both approaches when developing. Could anyone with some experience in this field tell me something about it?

Hope you understand.

Dave Schweisguth
  • 31,916
  • 10
  • 88
  • 112
Mikkel
  • 1,571
  • 8
  • 31
  • 54

1 Answers1

1

Some reasons I've seen why feature branches and feature toggles coexist:

  • Feature branches require no effort to use (aside from some discussion of process, which you'd need for any approach), so teams are likely to start with them. Eventually a team realizes that feature toggles are a good idea and implements them, but by then they're already used to feature branches so they continue to use both mechanisms.
  • Even after you've put in place a method and process for using them, feature toggles take more effort to use than branches. You need to write code around each change, which isn't always trivial. And you have to remove them when they've served their purpose, which seems trivial but evidently stumps some developers.
  • Branches have one real potential advantage that I can think of: until they're merged, they're completely out of the way of the rest of the team. You might want that if you don't think your work is ready to show others.
Dave Schweisguth
  • 31,916
  • 10
  • 88
  • 112
  • Thanks for your post.. cleared up some things for me :) Will see if others have an opinion. – Mikkel May 08 '16 at 18:41