Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Trunk-Based Development

Trunk-Based Development

Branches are an unnecessary bureaucracy for most of typical software engineering work. I’m going to explore three eXtreme Programming practices which can help you get rid of these bottlenecks.

This is a presentation for lightning talk. However, this subject has very broad implications and there wasn’t space for any nuances.

Original Keynote presentation can be found at https://www.icloud.com/keynote/0PQ8LHjKeBE_P1B_od5hJ5YGQ#Trunk-Based_Development_Lightning_Talk.

Filip Zrůst

August 16, 2018
Tweet

More Decks by Filip Zrůst

Other Decks in Programming

Transcript

  1. TRUNK-BASED DEVELOPMENT TRUNK-BASED? ALSO KNOWN AS ▸ Master-Based ▸ Single

    Branch CONTRASTED WITH ▸ Gitflow ▸ GitHub Flow
  2. TRUNK-BASED DEVELOPMENT DIFFERENT TYPES OF PROJECTS Unlimited Limited TEAM SIZE

    ROLES TRUST WORKFLOW LIFE CYCLE BAZAAR CATHEDRAL Loose Precise
  3. TRUNK-BASED DEVELOPMENT DIFFERENT TYPES OF PROJECTS Unlimited Limited TEAM SIZE

    ROLES TRUST WORKFLOW LIFE CYCLE BAZAAR CATHEDRAL Loose Low Precise High
  4. TRUNK-BASED DEVELOPMENT DIFFERENT TYPES OF PROJECTS Unlimited Limited TEAM SIZE

    ROLES TRUST WORKFLOW LIFE CYCLE BAZAAR CATHEDRAL Loose Low Asynchronous Precise High Synchronous
  5. TRUNK-BASED DEVELOPMENT DIFFERENT TYPES OF PROJECTS Unlimited Limited TEAM SIZE

    ROLES TRUST WORKFLOW LIFE CYCLE BAZAAR CATHEDRAL Loose Low Asynchronous Complex Precise High Synchronous Streamlined
  6. TRUNK-BASED DEVELOPMENT EMBRACE CATHEDRAL TO THE EXTREME ▸ Do not

    postpone what you can do now ▸ Pair programming ▸ Test-first approach ▸ CI with feature toggles ▸ Code review ▸ Waiting for incidents ▸ Feature branching INSTEAD OF
  7. TRUNK-BASED DEVELOPMENT EMBRACE CATHEDRAL TO THE EXTREME ▸ Do not

    postpone what you can do now ▸ Pair programming ▸ Test-first approach ▸ CI with feature toggles ▸ Code review ▸ Waiting for incidents ▸ Feature branching INSTEAD OF
  8. TRUNK-BASED DEVELOPMENT EMBRACE CATHEDRAL TO THE EXTREME ▸ Do not

    postpone what you can do now ▸ Pair programming ▸ Test-first approach ▸ CI with feature toggles ▸ Code review ▸ Waiting for incidents ▸ Feature branching INSTEAD OF
  9. TRUNK-BASED DEVELOPMENT EMBRACE CATHEDRAL TO THE EXTREME ▸ Do not

    postpone what you can do now ▸ Pair programming ▸ Test-first approach ▸ CI with feature toggles ▸ Code review ▸ Waiting for incidents ▸ Feature branching INSTEAD OF
  10. TRUNK-BASED DEVELOPMENT EMBRACE CATHEDRAL TO THE EXTREME ▸ Do not

    postpone what you can do now ▸ Pair programming ▸ Test-first approach ▸ CI with feature toggles ▸ Code review ▸ Waiting for incidents ▸ Feature branching INSTEAD OF
  11. TRUNK-BASED DEVELOPMENT EMBRACE CATHEDRAL TO THE EXTREME ▸ Do not

    postpone what you can do now ▸ Pair programming ▸ Test-first approach ▸ CI with feature toggles ▸ Code review ▸ Waiting for incidents ▸ Feature branching INSTEAD OF
  12. TRUNK-BASED DEVELOPMENT WHAT ARE YOU WAITING FOR? ▸ Practices named

    and described one decade ago ▸ Nothing changed validity their validity ▸ Question your process from time to time