8 Easy delivery starts with version control

 

In this chapter

  • using the DORA metrics that measure velocity: deployment frequency and lead time for changes
  • increasing speed and communication by avoiding long-lived feature branches and code freezes
  • decreasing lead time for changes by using small, frequent commits
  • increasing deployment frequency safely by using small, frequent commits

In the previous chapters, I’ve been focusing on continuous integration (CI), but from this chapter onward, I’ll transition to the rest of the activities in a continuous delivery (CD) pipeline—specifically, the transformation tasks that are used to build, deploy, and release your code.

Good CI practices have a direct impact on the rest of your CD. In this chapter, I’ll dive into effective approaches to version control to make CD run more smoothly, and how to measure that effectiveness.

Meanwhile at Watch Me Watch

Remember the start-up Watch Me Watch from chapter 3? Well it’s still going strong, and, in fact, growing! In the past two years, the company has grown from just Sasha and Sarah to more than 50 employees.

From the very beginning, Watch Me Watch invested in automating its deployments. But as the company has grown, the engineers have gotten nervous that these deployments are riskier and riskier, so they’ve been slowing them down.

Each of their services is now released during only specific windows, once every two months. For a week before a release, the codebase is frozen, and no new changes can go in.

The DORA metrics

Velocity at Watch Me Watch

Lead time for changes

Watch Me Watch and elite performers

Increasing velocity at Watch Me Watch

Integrating with AllCatsAllTheTime

Incremental feature delivery

Conclusion