SlideShare a Scribd company logo
23-05-2018
1
Trunk Based Development
Ritabrata Moitra
2
Continuous Integration
● Development practice that requires
developers to integrate code into a shared
repository several times a day
● Each check-in is then verified with an
automated build
● Detect problems early
What and Why?
23-05-2018
2
3
Continuous Integration
EARLY FEEDBACK
Most Valuable Player
4
Branching
The Why
23-05-2018
3
5
Let’s Build a
house (again)
6
Let’s Build a
house (again)
23-05-2018
4
7
Feature Branching
The Why
8
Feature Branching
● Code, much like a house, does not
work in isolation
● Late feedback
● Risky to integrateWhat went wrong there?
23-05-2018
5
9
● Developers push code ( of all
possible features that are in
development ) on to a single
remote branch, referred to as the
trunk
● No merge hells
● Faster feedback
● No “It works on my machine”
● Always release ready
Trunk Based Development
Only way to achieve CI
10
● Small commits, frequent commits
● Faster time to production ( optimise
builds, tests, whatever it takes )
● Team’s mindset and commitment
to maintain “every commit as
production-ready”.
● NEVER intentionally commit a
change that we know doesn’t work
Benefits
23-05-2018
6
11
AAQ’s
❖ How do you build something
complex in a small commit?
➢ You don’t.
❖ Bug fixes?
➢ Why should they be
different?
❖ Code Reviews ?
➢ Aha! Pair!
❖ Only works for small teams?
➢ Google does TBD with 25000
devs developing on a single
trunk. (Source: Rachel Potvin, Engineering
Manager, Google)
ALWAYS asked questions
12
❖ But we have short lived branches!
➢ What do you mean by short
lived?
➢ More than a day? Not short!
➢ Less than a day? Why bother?
❖ What about new unfinished
features? How do we push them ?
AAQ’s
ALWAYS asked questions
23-05-2018
7
13
AAQ’s
Always Asked Questions
Feature Toggles
14
● DONT BRANCH!
● Dont Branch!
● Dont branch!
Branching strategies
Lets recap!
23-05-2018
8
THANK YOU
Ritabrata Moitra

More Related Content

PDF
Continuous integrations - Basics
PDF
Transition from CI to CD
PDF
Introduction to Lagom Framework
PPT
Atwix - Ярослав Рогоза
PPT
Игорь Бондаренко (Neklo) - Организация процесса разработки модулей для Magento
PDF
Dev objective2015 lets git together
PDF
Overview of Gitlab usage
PPTX
Introduction to unit testing
Continuous integrations - Basics
Transition from CI to CD
Introduction to Lagom Framework
Atwix - Ярослав Рогоза
Игорь Бондаренко (Neklo) - Организация процесса разработки модулей для Magento
Dev objective2015 lets git together
Overview of Gitlab usage
Introduction to unit testing

What's hot (20)

PPTX
Wagento Magento 2 developer - Brent W Peterson
PDF
Trunk based development for Beginners
PPTX
Continuous integration introduction
PDF
Continuous integration & Continuous Delivery @DeVz
PPT
How to monitor kubernetes clusters
PPTX
Continuous integration CloudParty 21 may 2014 - Milan
PDF
How to keep modules up to date
PPT
Flex and .NET Integration
PPTX
Gitlab CI/CD
PDF
Implementing a Continuous Delivery pipeline using OW2 infrastructure, OW2con'...
 
PDF
Git Watch
PDF
Magento Continuous Integration & Continuous Delivery @MM17HR
PDF
CoDe:U git flow
PDF
Debugging 2013- Lars pedersen
PPTX
Intro to Git for Project Managers
PPTX
Last 2019: Designing a DevOps Dependency Diagram to Decide Development Direction
PPTX
Salesforce CI (Continuous Integration) - SFDX + Bitbucket Pipelines
PPTX
Introduction to MuleSoft
PDF
Common Sense Agile
PDF
Introducing GitLab (June 2018)
Wagento Magento 2 developer - Brent W Peterson
Trunk based development for Beginners
Continuous integration introduction
Continuous integration & Continuous Delivery @DeVz
How to monitor kubernetes clusters
Continuous integration CloudParty 21 may 2014 - Milan
How to keep modules up to date
Flex and .NET Integration
Gitlab CI/CD
Implementing a Continuous Delivery pipeline using OW2 infrastructure, OW2con'...
 
Git Watch
Magento Continuous Integration & Continuous Delivery @MM17HR
CoDe:U git flow
Debugging 2013- Lars pedersen
Intro to Git for Project Managers
Last 2019: Designing a DevOps Dependency Diagram to Decide Development Direction
Salesforce CI (Continuous Integration) - SFDX + Bitbucket Pipelines
Introduction to MuleSoft
Common Sense Agile
Introducing GitLab (June 2018)
Ad

Similar to Trunk based development ritabrata (20)

PPTX
Implementing Continuous Integration in .NET for Cheapskates
PDF
Introduction to Continuous Integration
PDF
QCon'17 talk: CI/CD at scale - lessons from LinkedIn and Mockito
PPTX
Continuous Integration and Delivery
PDF
CI/CD: Lessons from LinkedIn and Mockito
PDF
Put "fast" back in "fast feedback"
PPTX
Configuration Management and Deployment
KEY
Continuous Deployment
PDF
The journey to Native Cloud Architecture & Microservices, tracing the footste...
PDF
Detecting secrets in code committed to gitlab (in real time)
PDF
Python Linters at Scale.pdf
PDF
Continuous integration (eng)
PPTX
Modern Web-site Development Pipeline
PPTX
How do we test nodejs apps?
PDF
Constinuous Integration
PPTX
Intro to Continuous Integration
PPTX
AgileLINC Continous Slides by Daniel Harp
PDF
Gerrit Code Review
PDF
Continuous Delivery: 5 years later (Incontro DevOps 2018)
ODP
RandomTest - Random Software Integration Tests That Just Work for C/C++, Java...
Implementing Continuous Integration in .NET for Cheapskates
Introduction to Continuous Integration
QCon'17 talk: CI/CD at scale - lessons from LinkedIn and Mockito
Continuous Integration and Delivery
CI/CD: Lessons from LinkedIn and Mockito
Put "fast" back in "fast feedback"
Configuration Management and Deployment
Continuous Deployment
The journey to Native Cloud Architecture & Microservices, tracing the footste...
Detecting secrets in code committed to gitlab (in real time)
Python Linters at Scale.pdf
Continuous integration (eng)
Modern Web-site Development Pipeline
How do we test nodejs apps?
Constinuous Integration
Intro to Continuous Integration
AgileLINC Continous Slides by Daniel Harp
Gerrit Code Review
Continuous Delivery: 5 years later (Incontro DevOps 2018)
RandomTest - Random Software Integration Tests That Just Work for C/C++, Java...
Ad

More from apgionline (20)

PDF
Collaboration secret power to shift through change lizzy morris
PDF
Autonomic computing-18th may dhiren shah prachi shah
PDF
Akka actorstotherescue nirmalya sengupta
PDF
Agile for everything dan greening
PDF
Agile coach as psychologists chandan lal patary
PDF
Agile beyond it case study sanika bhide
PDF
2018 05 - human side of agile - apgi - jayaprakash prabhakar
PDF
10 commandments-mandar-kulkarni
PDF
Sprint design thinking amit ranjan
PDF
Scrum master master class
PDF
SAFe case study vandana sinha temenos
PDF
Pratham IIT B team
PDF
Performance kanban springer nature rucha kapare
PDF
Keynote Lizzy Morris
PDF
Institutionalization of user experience chaitanya inamdar
PDF
Infuse life embrace change sunil mundra
PDF
How to get more out of your agile transformation nilesh kulkarni
PDF
Great orientation rahul shah
PDF
Enterpreneur mindset for agile teams sharmila patwardhan
PDF
Emotional intelligence pooja wandile
Collaboration secret power to shift through change lizzy morris
Autonomic computing-18th may dhiren shah prachi shah
Akka actorstotherescue nirmalya sengupta
Agile for everything dan greening
Agile coach as psychologists chandan lal patary
Agile beyond it case study sanika bhide
2018 05 - human side of agile - apgi - jayaprakash prabhakar
10 commandments-mandar-kulkarni
Sprint design thinking amit ranjan
Scrum master master class
SAFe case study vandana sinha temenos
Pratham IIT B team
Performance kanban springer nature rucha kapare
Keynote Lizzy Morris
Institutionalization of user experience chaitanya inamdar
Infuse life embrace change sunil mundra
How to get more out of your agile transformation nilesh kulkarni
Great orientation rahul shah
Enterpreneur mindset for agile teams sharmila patwardhan
Emotional intelligence pooja wandile

Recently uploaded (20)

PPTX
Advanced SystemCare Ultimate Crack + Portable (2025)
PDF
Product Update: Alluxio AI 3.7 Now with Sub-Millisecond Latency
PPTX
Patient Appointment Booking in Odoo with online payment
PDF
Complete Guide to Website Development in Malaysia for SMEs
PDF
How to Choose the Right IT Partner for Your Business in Malaysia
PPTX
Log360_SIEM_Solutions Overview PPT_Feb 2020.pptx
PDF
wealthsignaloriginal-com-DS-text-... (1).pdf
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
PPTX
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
PPTX
AMADEUS TRAVEL AGENT SOFTWARE | AMADEUS TICKETING SYSTEM
PDF
T3DD25 TYPO3 Content Blocks - Deep Dive by AndrĂŠ Kraus
PPTX
Monitoring Stack: Grafana, Loki & Promtail
PDF
Design an Analysis of Algorithms I-SECS-1021-03
PDF
Design an Analysis of Algorithms II-SECS-1021-03
PDF
Salesforce Agentforce AI Implementation.pdf
PPTX
Why Generative AI is the Future of Content, Code & Creativity?
PPTX
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
PDF
Odoo Companies in India – Driving Business Transformation.pdf
PDF
Navsoft: AI-Powered Business Solutions & Custom Software Development
PPTX
Oracle Fusion HCM Cloud Demo for Beginners
Advanced SystemCare Ultimate Crack + Portable (2025)
Product Update: Alluxio AI 3.7 Now with Sub-Millisecond Latency
Patient Appointment Booking in Odoo with online payment
Complete Guide to Website Development in Malaysia for SMEs
How to Choose the Right IT Partner for Your Business in Malaysia
Log360_SIEM_Solutions Overview PPT_Feb 2020.pptx
wealthsignaloriginal-com-DS-text-... (1).pdf
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
AMADEUS TRAVEL AGENT SOFTWARE | AMADEUS TICKETING SYSTEM
T3DD25 TYPO3 Content Blocks - Deep Dive by AndrĂŠ Kraus
Monitoring Stack: Grafana, Loki & Promtail
Design an Analysis of Algorithms I-SECS-1021-03
Design an Analysis of Algorithms II-SECS-1021-03
Salesforce Agentforce AI Implementation.pdf
Why Generative AI is the Future of Content, Code & Creativity?
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
Odoo Companies in India – Driving Business Transformation.pdf
Navsoft: AI-Powered Business Solutions & Custom Software Development
Oracle Fusion HCM Cloud Demo for Beginners

Trunk based development ritabrata

  • 1. 23-05-2018 1 Trunk Based Development Ritabrata Moitra 2 Continuous Integration ● Development practice that requires developers to integrate code into a shared repository several times a day ● Each check-in is then verified with an automated build ● Detect problems early What and Why?
  • 2. 23-05-2018 2 3 Continuous Integration EARLY FEEDBACK Most Valuable Player 4 Branching The Why
  • 3. 23-05-2018 3 5 Let’s Build a house (again) 6 Let’s Build a house (again)
  • 4. 23-05-2018 4 7 Feature Branching The Why 8 Feature Branching ● Code, much like a house, does not work in isolation ● Late feedback ● Risky to integrateWhat went wrong there?
  • 5. 23-05-2018 5 9 ● Developers push code ( of all possible features that are in development ) on to a single remote branch, referred to as the trunk ● No merge hells ● Faster feedback ● No “It works on my machine” ● Always release ready Trunk Based Development Only way to achieve CI 10 ● Small commits, frequent commits ● Faster time to production ( optimise builds, tests, whatever it takes ) ● Team’s mindset and commitment to maintain “every commit as production-ready”. ● NEVER intentionally commit a change that we know doesn’t work Benefits
  • 6. 23-05-2018 6 11 AAQ’s ❖ How do you build something complex in a small commit? ➢ You don’t. ❖ Bug fixes? ➢ Why should they be different? ❖ Code Reviews ? ➢ Aha! Pair! ❖ Only works for small teams? ➢ Google does TBD with 25000 devs developing on a single trunk. (Source: Rachel Potvin, Engineering Manager, Google) ALWAYS asked questions 12 ❖ But we have short lived branches! ➢ What do you mean by short lived? ➢ More than a day? Not short! ➢ Less than a day? Why bother? ❖ What about new unfinished features? How do we push them ? AAQ’s ALWAYS asked questions
  • 7. 23-05-2018 7 13 AAQ’s Always Asked Questions Feature Toggles 14 ● DONT BRANCH! ● Dont Branch! ● Dont branch! Branching strategies Lets recap!