ts branching over the top
DESCRIPTION
TRANSCRIPT
Boutique product development company It is amazing what you can accomplish when you have a client-centric team to deliver outstanding products.
Branching Over the Top
Sohail Mohabbat Ali | Software Evangelist
Branching Over the Top Topics covered in the presentation
• What is branch merging
• Why Branching
• When Branching
• Branch Plans
• Branch Examples
• Demo
Sohail Mohabbat Ali | Software Evangelist
Branching
Branching and Merging
Sohail Mohabbat Ali | Software Evangelist
Branching is the duplication of an object under revision control so that modifications can happen in parallel along both branches.
Merging is the act of reconciling multiple changes made to different copies of the same file. Most often, it is necessary when a file is modified by two people on two different computers at the same time. Later, these changes are merged, resulting in a single new file that contains both sets of changes.
Branching
Why Branching
Sohail Mohabbat Ali | Software Evangelist
• Makes Software Agile
• Increases Maintainability.
Branching
When Branching?
Sohail Mohabbat Ali | Software Evangelist
• Release Isolation
• Feature Isolation
• Team Isolation
• Integration Isolation
Branching
Branching Plans
Sohail Mohabbat Ali | Software Evangelist
• Basic Branch Plan
• Standard Branch Plan
• Advanced Branch Plan
Branching
Basic Branch Plan
Sohail Mohabbat Ali | Software Evangelist
• Basic Branch Plan
• Standard Branch Plan
• Advanced Branch Plan
Branching
Branching Plans
Sohail Mohabbat Ali | Software Evangelist
Bra
nch
SERVICE PACK
RELEASE
Bra
nch
Development
Production /
Release
Bra
nch
Branching
Advance Branch Plans
Sohail Mohabbat Ali | Software Evangelist
Bra
nch
SERVICE PACK
HOT FIX
RELEASE
Bra
nch
Bra
nch
Development
Production /
Release
Bra
nch
Branching
Sohail Mohabbat Ali | Software Evangelist
DEV
Bra
nch
FI
V1.1 (start) V1.1 FT3
RI
V1.1 (bug fix)
FI
V1.1
FI
V1.2
RI
V1.2
CI / Nightly Builds
(Early validation)
Nightly Build
(Early Validation)
V1.0
Production
1 2
3 4 5
6 7
8
Branch Example (Single Team)
Branching
Branch Example (Multi Team)
Sohail Mohabbat Ali | Software Evangelist
DEV FT1
MAIN
Bra
nch
RI
PRODUCTION
V1.0.1
FI
V1.1 (Release)
V1.1 Golden
DEV FT2
DEV FT3
Bra
nch
V1.1 FT2
V1.1 FT1
RI
RI
RI
Bra
nch
Bra
nch
FI
V1.1 FT2 (start)
V1.1 FT1
BM
V1.0
Branching
Branch Example (Feature)
Sohail Mohabbat Ali | Software Evangelist
FEATURE 1
TEAM 1
MAIN
Bra
nch
FEATURE 2
TEAM 2
Bra
nch
Bra
nch
Bra
nch
RI
RI
RI
1
2
3
2
4
5
5
6 6
The two DEV
branches are
created as
sequential tasks,
but as one unit of
work.
The Reverse
Integration tasks
are sequential
tasks, but
created as two
units of work
Branching
Branch Example (Hotfix, Servicepack)
Sohail Mohabbat Ali | Software Evangelist
Bra
nch
DEV-1
DEV …
MAIN
R1 (SP)
Bra
nch
Bra
nch
Bra
nch
Bra
nch
Bra
nch
Bra
nch
Bra
nch
Bra
nch
SERVICE PACK
R2 (SP)
HOT FIX
R1 (SP0) R1 (SP1)
R1 (SP0) R1 (SP1)
R2 (SP0)
R2 (SP0)
FI
1
2
2
3
4
6
7
The two DEV
branches are
created as
sequential tasks,
but as one unit of
work.