"Branch by Abstraction" is a technique 1 for making a large-scale change to a software system in gradual way that allows you to release the system regularly while the change is still in-progress. 1: This technique has been around for a long time, although it never got a popular name. Paul Hammant introduced the term "Branch by Abstraction" while arguing in favor of Trunk Based Development (he cred
![bliki: Branch By Abstraction](https://cdn-ak-scissors.b.st-hatena.com/image/square/22196d87568dc86c73905420f298eb36e70c524b/height=288;version=1;width=512/https%3A%2F%2Fmartinfowler.com%2Fbliki%2Fimages%2Fbranch-by-abstraction%2Fstep-4.png)