Branching Patterns: Integration Frequency

This post was originally published on this site

Martin Fowler

Branching is about managing the interplay of isolation and integration. Having everyone work on a single shared codebase all the time, doesn’t work because I can’t compile the program if you’re in the middle of typing a variable name. So at least to some degree, we need a notion of a private workspace that I can work on for a while. Modern source code controls tools make it easy to branch and monitor changes to those branches. At some point however we need to integrate. Thinking about branching strategies is really all about deciding how and when we integrate.

Mainline Integration

Developers integrate their work by pulling from mainline, merging, and – if healthy – pushing back into mainline

A mainline gives a clear definition of what the current state of the teams’ software looks like. One of the biggest benefits of using a mainline is that it simplifies integration. Without

To read the full article click on the 'post' link at the top.