Upload
chris-oldwood
View
183
Download
1
Embed Size (px)
Citation preview
Waltzing with BranchesWaltzing with Branches
Chris OldwoodChris OldwoodAgile on the Beach 2015Agile on the Beach 2015
@chrisoldwood / @chrisoldwood / [email protected]@cix.co.uk
Cargo Cult Software Cargo Cult Software EngineeringEngineering
““They go through the motions of looking like They go through the motions of looking like effective organizations that are stylistically effective organizations that are stylistically similar. But without any real understanding similar. But without any real understanding of why the practices work […]” of why the practices work […]”
-- -- Steve McConnellSteve McConnell
Another cult is born…Another cult is born…
https://twitter.com/jezhumble/status/400071665482088448
Read the small print!Read the small print!
https://twitter.com/jezhumble/status/400071665482088448
Waltzing with BearsWaltzing with Bears
<<<<<<<<<<<<<<<<<<<<<<<<Knox in box.Knox in box.Fox in socks.Fox in socks.Knox on foxKnox on foxin socks in box.in socks in box.========================Socks on KnoxSocks on Knoxand Knox in box.and Knox in box.Fox in socksFox in sockson box on Knox.on box on Knox.>>>>>>>>>>>>>>>>>>>>>>>>
“RISK MANAGEMENT IS PROJECT MANAGEMENT FOR ADULTS”
Branching is a technique for Branching is a technique for managing risk, but…managing risk, but…
Branching is Branching is not the onlynot the only technique for managing risktechnique for managing risk
Risk: Loss of ProductivityRisk: Loss of Productivity
Risk: Loss of ConfidenceRisk: Loss of Confidence
BranchingBranching
MergingMerging
Integration/Development Integration/Development BranchBranch
1 2 3 4 5
Release BranchRelease Branch
3 4 5 6 7
A B
Stable
Volatile
Branching From a LabelBranching From a Label
3 4 5 6 7
A B
v1 X Y
v1.1
Feature/Task/Private BranchFeature/Task/Private Branch
3 4 5 6 7
A B C
More Stable
More Volatile
ShelvingShelving
1 2 4 5 6
3
Integration PainsIntegration Pains
3 4 5 6 7
X Y Z
A B
Cherry PickingCherry Picking
3 4 5 6 7
A CB
No Branch (Feature No Branch (Feature Toggles)Toggles)
1a 2 1b 3 1c
Always Ready to Ship
Continuous Integration is a Continuous Integration is a mindset, not a tool.mindset, not a tool.
Gatekeeper WorkflowsGatekeeper Workflows
3 4 5 6 7
X Y
BAlice
Bob
C
GK
Z
D
Manual Checks & BalancesManual Checks & Balances
AutomationAutomation
Branching Branching cancan be used to be used to manage risk, but there are manage risk, but there are
more productive ways.more productive ways.
Questions?Questions?
Blog:Blog:http://chrisoldwood.blogspot.comhttp://chrisoldwood.blogspot.com
@chrisoldwood / @chrisoldwood / [email protected]@cix.co.uk
Articles:Articles:http://www.chrisoldwood.com/http://www.chrisoldwood.com/
articles.htmarticles.htm