SlideShare ist ein Scribd-Unternehmen logo
1 von 26
Downloaden Sie, um offline zu lesen
ACHIEVING AGILITY WITH CODE
REPOSITORIES
CHRISTOPHER HUMAN
ABOUT THE TALKER
• Christopher Human
• 9 year career as a web developer
• Senior PHP Developer at WorldAware
• I have a multitude of weird hobbies…
• Casual Agile Enthusiast
WHAT IS A CODE REPOSITORY?
🏠
THE BASICS
SIGNS YOUR CODE REPO ISN’T AGILE
• “We can’t deploy because…”
• “If we’ll deploy ‘Feature X’ we’ll also deploy ‘Feature Y’ ?”
WHY SHOULD OUR REPO BE AGILE?
• Reduce the number of internal blockers
• Reduce time spent preparing for deployments
BRANCHES
• Branching allow you to create a cloned snapshot of code, and work
independently of other branches
• All repositories have a “main” branch
• master
• Typically contains ‘production’ code
BRANCHES
THE AGILE WAY
• Make branches for each environment
• master is Production
• qa / staging
• qa1, qa2 etc.
THE AGILE WAY
RELEASE BRANCHES
• Product Owners: Communicate with your teams about releases and what work
goes where.
• Every release should ideally have its own branch.
• REL/1.1.0/new_design
THE AGILE WAY
STORY BRANCHES
• Every story or task should have their own branch
• FT/TICKET-1/re-organize_buttons
• FT/TICKET-1/TASK/TICKET-2/change_button_names
• Similar convention can be used for bugs
A BRIEF EXAMPLE
• Production is up to date
• Staging branch for staging
environment
master
staging
A BRIEF EXAMPLE
• New sprint
master
staging REL/1.0/rework_buttons
A BRIEF EXAMPLE
• First story is being
worked on
master
staging REL/1.0/rework_buttons
FT/PROJ-1/
change_colours
A BRIEF EXAMPLE
• Dev complete,
merge into testing
master
staging
FT/PROJ-1/
change_colours
REL/1.0/rework_buttons
A BRIEF EXAMPLE
• Dev complete,
merge into testing
master
staging
(PROJ-1) REL/1.0/rework_buttons
A BRIEF EXAMPLE
• Testing complete
and meets
definition of done
Merge into release
branch
master
staging
(PROJ-1)
REL/1.0/rework_buttons
FT/PROJ-1/
change_colours
A BRIEF EXAMPLE
• Testing complete
and meets
definition of done
Merge into release
branch
master
staging
(PROJ-1)
REL/1.0/rework_buttons
(PROJ-1)
A BRIEF EXAMPLE
• OH NO! A 🐞 master
staging
(PROJ-1)
REL/1.0/rework_buttons
(PROJ-1)
SD/ISSUE-2/fix_bug
A BRIEF EXAMPLE
• 🐞fix test
master
staging
(PROJ-1)
SD/ISSUE-2/fix_bug
REL/1.0/rework_buttons
(PROJ-1)
A BRIEF EXAMPLE
• 🐞fix test
master
staging
(PROJ-1) (ISSUE-2)
REL/1.0/rework_buttons
(PROJ-1)
A BRIEF EXAMPLE
• Deploy the 🐞
fix
master
staging
(PROJ-1) (ISSUE-2)
REL/1.0/rework_buttons
(PROJ-1)
SD/ISSUE-2/fix_bug
A BRIEF EXAMPLE
• Deploy the 🐞
fix
master
(ISSUE-2)
staging
(PROJ-1) (ISSUE-2)
REL/1.0/rework_buttons
(PROJ-1)
A BRIEF EXAMPLE
• Sprint is complete
Lets deploy to
production!
master
(ISSUE-2)
staging
(PROJ-1) (ISSUE-2)
REL/1.0/rework_buttons
(PROJ-1)
A BRIEF EXAMPLE
• Sprint is complete
Lets deploy to
production!
master
(ISSUE-2) (PROJ-1)
staging
(PROJ-1) (ISSUE-2)
Questions?

Weitere ähnliche Inhalte

Was ist angesagt?

AP Setup Using Oxalis
AP Setup Using OxalisAP Setup Using Oxalis
AP Setup Using OxalisNap Ramirez
 
Deploying PHP Application Using Bitbucket Pipelines
Deploying PHP Application Using Bitbucket PipelinesDeploying PHP Application Using Bitbucket Pipelines
Deploying PHP Application Using Bitbucket PipelinesDolly Aswin Harahap
 
A successful Git branching model
A successful Git branching model A successful Git branching model
A successful Git branching model abodeltae
 
Continuous delivery with open source tools
Continuous delivery with open source toolsContinuous delivery with open source tools
Continuous delivery with open source toolsSebastian Helzle
 
Migrating to git
Migrating to gitMigrating to git
Migrating to gitXpand IT
 
Bringing Dev and Ops together with ChatOps
Bringing Dev and Ops together with ChatOpsBringing Dev and Ops together with ChatOps
Bringing Dev and Ops together with ChatOpsJaap Brasser
 
Git basics, Team Workflows (Ciro Miranda)
Git basics, Team Workflows (Ciro Miranda)Git basics, Team Workflows (Ciro Miranda)
Git basics, Team Workflows (Ciro Miranda)Ciro Miranda
 
Drupal Performance
Drupal Performance Drupal Performance
Drupal Performance Pantheon
 
40 square's git workflow
40 square's git workflow40 square's git workflow
40 square's git workflowRuben Tan
 
Git branching strategies
Git branching strategiesGit branching strategies
Git branching strategiesjstack
 
Automation With Frank
Automation With FrankAutomation With Frank
Automation With FrankRalu Mihordea
 
All My Tests Are Passing, Now What?
All My Tests Are Passing, Now What?All My Tests Are Passing, Now What?
All My Tests Are Passing, Now What?Christopher Read
 
Redesigned FME Server 2018
Redesigned FME Server 2018Redesigned FME Server 2018
Redesigned FME Server 2018Safe Software
 
IMGeospatial: FME World Tour 2018 London: FME Server 2018
IMGeospatial: FME World Tour 2018 London: FME Server 2018IMGeospatial: FME World Tour 2018 London: FME Server 2018
IMGeospatial: FME World Tour 2018 London: FME Server 2018IMGeospatial
 
A Git Workflow Model or Branching Strategy
A Git Workflow Model or Branching StrategyA Git Workflow Model or Branching Strategy
A Git Workflow Model or Branching StrategyVivek Parihar
 
Scaling Humans - BigPanda's Fabulous ChatOps Adventure - Erik Zaadi, BigPanda...
Scaling Humans - BigPanda's Fabulous ChatOps Adventure - Erik Zaadi, BigPanda...Scaling Humans - BigPanda's Fabulous ChatOps Adventure - Erik Zaadi, BigPanda...
Scaling Humans - BigPanda's Fabulous ChatOps Adventure - Erik Zaadi, BigPanda...DevOpsDays Tel Aviv
 

Was ist angesagt? (19)

AP Setup Using Oxalis
AP Setup Using OxalisAP Setup Using Oxalis
AP Setup Using Oxalis
 
Deploying PHP Application Using Bitbucket Pipelines
Deploying PHP Application Using Bitbucket PipelinesDeploying PHP Application Using Bitbucket Pipelines
Deploying PHP Application Using Bitbucket Pipelines
 
A successful Git branching model
A successful Git branching model A successful Git branching model
A successful Git branching model
 
Continuous delivery with open source tools
Continuous delivery with open source toolsContinuous delivery with open source tools
Continuous delivery with open source tools
 
Migrating to git
Migrating to gitMigrating to git
Migrating to git
 
Bringing Dev and Ops together with ChatOps
Bringing Dev and Ops together with ChatOpsBringing Dev and Ops together with ChatOps
Bringing Dev and Ops together with ChatOps
 
Git basics, Team Workflows (Ciro Miranda)
Git basics, Team Workflows (Ciro Miranda)Git basics, Team Workflows (Ciro Miranda)
Git basics, Team Workflows (Ciro Miranda)
 
Continuous Deployment
Continuous DeploymentContinuous Deployment
Continuous Deployment
 
Continuous Deployment
Continuous DeploymentContinuous Deployment
Continuous Deployment
 
Drupal Performance
Drupal Performance Drupal Performance
Drupal Performance
 
40 square's git workflow
40 square's git workflow40 square's git workflow
40 square's git workflow
 
Git branching strategies
Git branching strategiesGit branching strategies
Git branching strategies
 
Automation With Frank
Automation With FrankAutomation With Frank
Automation With Frank
 
All My Tests Are Passing, Now What?
All My Tests Are Passing, Now What?All My Tests Are Passing, Now What?
All My Tests Are Passing, Now What?
 
Redesigned FME Server 2018
Redesigned FME Server 2018Redesigned FME Server 2018
Redesigned FME Server 2018
 
IMGeospatial: FME World Tour 2018 London: FME Server 2018
IMGeospatial: FME World Tour 2018 London: FME Server 2018IMGeospatial: FME World Tour 2018 London: FME Server 2018
IMGeospatial: FME World Tour 2018 London: FME Server 2018
 
Jenkins CI in Action
Jenkins CI in ActionJenkins CI in Action
Jenkins CI in Action
 
A Git Workflow Model or Branching Strategy
A Git Workflow Model or Branching StrategyA Git Workflow Model or Branching Strategy
A Git Workflow Model or Branching Strategy
 
Scaling Humans - BigPanda's Fabulous ChatOps Adventure - Erik Zaadi, BigPanda...
Scaling Humans - BigPanda's Fabulous ChatOps Adventure - Erik Zaadi, BigPanda...Scaling Humans - BigPanda's Fabulous ChatOps Adventure - Erik Zaadi, BigPanda...
Scaling Humans - BigPanda's Fabulous ChatOps Adventure - Erik Zaadi, BigPanda...
 

Ähnlich wie Achieving Agility with Code Repositories

Real World Elixir Deployment
Real World Elixir DeploymentReal World Elixir Deployment
Real World Elixir DeploymentPete Gamache
 
August Webinar - Water Cooler Talks: A Look into a Developer's Workbench
August Webinar - Water Cooler Talks: A Look into a Developer's WorkbenchAugust Webinar - Water Cooler Talks: A Look into a Developer's Workbench
August Webinar - Water Cooler Talks: A Look into a Developer's WorkbenchHoward Greenberg
 
Winning the Erlang Edit•Build•Test Cycle
Winning the Erlang Edit•Build•Test CycleWinning the Erlang Edit•Build•Test Cycle
Winning the Erlang Edit•Build•Test CycleRusty Klophaus
 
The Architect Way - JSCamp.asia 2012
The Architect Way - JSCamp.asia 2012The Architect Way - JSCamp.asia 2012
The Architect Way - JSCamp.asia 2012Jan Jongboom
 
Let's create a multilingual site in WordPress
Let's create a multilingual site in WordPressLet's create a multilingual site in WordPress
Let's create a multilingual site in WordPressMarko Heijnen
 
Continuous Integration with Open Source Tools - PHPUgFfm 2014-11-20
Continuous Integration with Open Source Tools - PHPUgFfm 2014-11-20Continuous Integration with Open Source Tools - PHPUgFfm 2014-11-20
Continuous Integration with Open Source Tools - PHPUgFfm 2014-11-20Michael Lihs
 
What we talk about when we talk about DevOps
What we talk about when we talk about DevOpsWhat we talk about when we talk about DevOps
What we talk about when we talk about DevOpsRicard Clau
 
Smarter deployments with octopus deploy
Smarter deployments with octopus deploySmarter deployments with octopus deploy
Smarter deployments with octopus deployThibaud Gravrand
 
PuppetCamp SEA 1 - The State of Puppet
PuppetCamp SEA 1 - The State of PuppetPuppetCamp SEA 1 - The State of Puppet
PuppetCamp SEA 1 - The State of PuppetOlinData
 
The State of Puppet
The State of PuppetThe State of Puppet
The State of PuppetPuppet
 
PuppetCamp SEA 1 - The State of Puppet
PuppetCamp SEA 1 - The State of PuppetPuppetCamp SEA 1 - The State of Puppet
PuppetCamp SEA 1 - The State of PuppetWalter Heck
 
Git Going w/ Git
Git Going w/ GitGit Going w/ Git
Git Going w/ GitheyMP
 
Build software like a bag of marbles, not a castle of LEGO®
Build software like a bag of marbles, not a castle of LEGO®Build software like a bag of marbles, not a castle of LEGO®
Build software like a bag of marbles, not a castle of LEGO®Hannes Lowette
 
Deploying your SaaS stack OnPrem
Deploying your SaaS stack OnPremDeploying your SaaS stack OnPrem
Deploying your SaaS stack OnPremKris Buytaert
 
Wilko Nienhaus - continuous delivery release the right thing, done right, at ...
Wilko Nienhaus - continuous delivery release the right thing, done right, at ...Wilko Nienhaus - continuous delivery release the right thing, done right, at ...
Wilko Nienhaus - continuous delivery release the right thing, done right, at ...DevConFu
 
Behaviour testing for single-page applications and API’s
Behaviour testing for single-page applications and API’sBehaviour testing for single-page applications and API’s
Behaviour testing for single-page applications and API’sAndrew Kirkpatrick
 

Ähnlich wie Achieving Agility with Code Repositories (20)

Real World Elixir Deployment
Real World Elixir DeploymentReal World Elixir Deployment
Real World Elixir Deployment
 
August Webinar - Water Cooler Talks: A Look into a Developer's Workbench
August Webinar - Water Cooler Talks: A Look into a Developer's WorkbenchAugust Webinar - Water Cooler Talks: A Look into a Developer's Workbench
August Webinar - Water Cooler Talks: A Look into a Developer's Workbench
 
Winning the Erlang Edit•Build•Test Cycle
Winning the Erlang Edit•Build•Test CycleWinning the Erlang Edit•Build•Test Cycle
Winning the Erlang Edit•Build•Test Cycle
 
The Architect Way - JSCamp.asia 2012
The Architect Way - JSCamp.asia 2012The Architect Way - JSCamp.asia 2012
The Architect Way - JSCamp.asia 2012
 
Let's create a multilingual site in WordPress
Let's create a multilingual site in WordPressLet's create a multilingual site in WordPress
Let's create a multilingual site in WordPress
 
Continuous Integration with Open Source Tools - PHPUgFfm 2014-11-20
Continuous Integration with Open Source Tools - PHPUgFfm 2014-11-20Continuous Integration with Open Source Tools - PHPUgFfm 2014-11-20
Continuous Integration with Open Source Tools - PHPUgFfm 2014-11-20
 
What we talk about when we talk about DevOps
What we talk about when we talk about DevOpsWhat we talk about when we talk about DevOps
What we talk about when we talk about DevOps
 
Smarter deployments with octopus deploy
Smarter deployments with octopus deploySmarter deployments with octopus deploy
Smarter deployments with octopus deploy
 
PuppetCamp SEA 1 - The State of Puppet
PuppetCamp SEA 1 - The State of PuppetPuppetCamp SEA 1 - The State of Puppet
PuppetCamp SEA 1 - The State of Puppet
 
The State of Puppet
The State of PuppetThe State of Puppet
The State of Puppet
 
PuppetCamp SEA 1 - The State of Puppet
PuppetCamp SEA 1 - The State of PuppetPuppetCamp SEA 1 - The State of Puppet
PuppetCamp SEA 1 - The State of Puppet
 
Git Going w/ Git
Git Going w/ GitGit Going w/ Git
Git Going w/ Git
 
Build software like a bag of marbles, not a castle of LEGO®
Build software like a bag of marbles, not a castle of LEGO®Build software like a bag of marbles, not a castle of LEGO®
Build software like a bag of marbles, not a castle of LEGO®
 
Stackato
StackatoStackato
Stackato
 
Switching to Git
Switching to GitSwitching to Git
Switching to Git
 
Deploying your SaaS stack OnPrem
Deploying your SaaS stack OnPremDeploying your SaaS stack OnPrem
Deploying your SaaS stack OnPrem
 
Wilko Nienhaus - continuous delivery release the right thing, done right, at ...
Wilko Nienhaus - continuous delivery release the right thing, done right, at ...Wilko Nienhaus - continuous delivery release the right thing, done right, at ...
Wilko Nienhaus - continuous delivery release the right thing, done right, at ...
 
Whats next in clientside templating
Whats next in clientside templatingWhats next in clientside templating
Whats next in clientside templating
 
Behaviour testing for single-page applications and API’s
Behaviour testing for single-page applications and API’sBehaviour testing for single-page applications and API’s
Behaviour testing for single-page applications and API’s
 
Stackato v4
Stackato v4Stackato v4
Stackato v4
 

Mehr von Scrum User Group South Africa

Everything's Relative - The Brain Science Behind Why We Are So Much Better at...
Everything's Relative - The Brain Science Behind Why We Are So Much Better at...Everything's Relative - The Brain Science Behind Why We Are So Much Better at...
Everything's Relative - The Brain Science Behind Why We Are So Much Better at...Scrum User Group South Africa
 
Beyond Tech: Confusion, Conflict, and Lost Productivity
Beyond Tech: Confusion, Conflict, and Lost Productivity Beyond Tech: Confusion, Conflict, and Lost Productivity
Beyond Tech: Confusion, Conflict, and Lost Productivity Scrum User Group South Africa
 
Nurturing Diversity in Technology Through Lean Startup & Product Kata
Nurturing Diversity in Technology Through Lean Startup & Product KataNurturing Diversity in Technology Through Lean Startup & Product Kata
Nurturing Diversity in Technology Through Lean Startup & Product KataScrum User Group South Africa
 
A Pinch of Design, Some Luck, a Lot of Passion + Hard Work - My Journey Build...
A Pinch of Design, Some Luck, a Lot of Passion + Hard Work - My Journey Build...A Pinch of Design, Some Luck, a Lot of Passion + Hard Work - My Journey Build...
A Pinch of Design, Some Luck, a Lot of Passion + Hard Work - My Journey Build...Scrum User Group South Africa
 

Mehr von Scrum User Group South Africa (13)

The Wall Must Fall
The Wall Must FallThe Wall Must Fall
The Wall Must Fall
 
Gathering Requirements Through Event Storming
Gathering Requirements Through Event StormingGathering Requirements Through Event Storming
Gathering Requirements Through Event Storming
 
3... 2... 1... We Have Sprint-Off
3... 2... 1... We Have Sprint-Off3... 2... 1... We Have Sprint-Off
3... 2... 1... We Have Sprint-Off
 
Everything's Relative - The Brain Science Behind Why We Are So Much Better at...
Everything's Relative - The Brain Science Behind Why We Are So Much Better at...Everything's Relative - The Brain Science Behind Why We Are So Much Better at...
Everything's Relative - The Brain Science Behind Why We Are So Much Better at...
 
Beyond Tech: Confusion, Conflict, and Lost Productivity
Beyond Tech: Confusion, Conflict, and Lost Productivity Beyond Tech: Confusion, Conflict, and Lost Productivity
Beyond Tech: Confusion, Conflict, and Lost Productivity
 
Nurturing Diversity in Technology Through Lean Startup & Product Kata
Nurturing Diversity in Technology Through Lean Startup & Product KataNurturing Diversity in Technology Through Lean Startup & Product Kata
Nurturing Diversity in Technology Through Lean Startup & Product Kata
 
Is Agile Driving You Insane?
Is Agile Driving You Insane?Is Agile Driving You Insane?
Is Agile Driving You Insane?
 
Slaying the Dragon: An Agile Adventure
Slaying the Dragon: An Agile AdventureSlaying the Dragon: An Agile Adventure
Slaying the Dragon: An Agile Adventure
 
But is it Art?
But is it Art?But is it Art?
But is it Art?
 
A Pinch of Design, Some Luck, a Lot of Passion + Hard Work - My Journey Build...
A Pinch of Design, Some Luck, a Lot of Passion + Hard Work - My Journey Build...A Pinch of Design, Some Luck, a Lot of Passion + Hard Work - My Journey Build...
A Pinch of Design, Some Luck, a Lot of Passion + Hard Work - My Journey Build...
 
Facilitating High Stakes Retrospectives
Facilitating High Stakes RetrospectivesFacilitating High Stakes Retrospectives
Facilitating High Stakes Retrospectives
 
Discovering Value Through Customer Interviews
Discovering Value Through Customer InterviewsDiscovering Value Through Customer Interviews
Discovering Value Through Customer Interviews
 
Training as a (T)eam
Training as a (T)eamTraining as a (T)eam
Training as a (T)eam
 

Kürzlich hochgeladen

Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsRoshan Dwivedi
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 

Kürzlich hochgeladen (20)

Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 

Achieving Agility with Code Repositories

  • 1. ACHIEVING AGILITY WITH CODE REPOSITORIES CHRISTOPHER HUMAN
  • 2. ABOUT THE TALKER • Christopher Human • 9 year career as a web developer • Senior PHP Developer at WorldAware • I have a multitude of weird hobbies… • Casual Agile Enthusiast
  • 3. WHAT IS A CODE REPOSITORY? 🏠
  • 5. SIGNS YOUR CODE REPO ISN’T AGILE • “We can’t deploy because…” • “If we’ll deploy ‘Feature X’ we’ll also deploy ‘Feature Y’ ?”
  • 6. WHY SHOULD OUR REPO BE AGILE? • Reduce the number of internal blockers • Reduce time spent preparing for deployments
  • 7. BRANCHES • Branching allow you to create a cloned snapshot of code, and work independently of other branches • All repositories have a “main” branch • master • Typically contains ‘production’ code
  • 9. THE AGILE WAY • Make branches for each environment • master is Production • qa / staging • qa1, qa2 etc.
  • 10. THE AGILE WAY RELEASE BRANCHES • Product Owners: Communicate with your teams about releases and what work goes where. • Every release should ideally have its own branch. • REL/1.1.0/new_design
  • 11. THE AGILE WAY STORY BRANCHES • Every story or task should have their own branch • FT/TICKET-1/re-organize_buttons • FT/TICKET-1/TASK/TICKET-2/change_button_names • Similar convention can be used for bugs
  • 12. A BRIEF EXAMPLE • Production is up to date • Staging branch for staging environment master staging
  • 13. A BRIEF EXAMPLE • New sprint master staging REL/1.0/rework_buttons
  • 14. A BRIEF EXAMPLE • First story is being worked on master staging REL/1.0/rework_buttons FT/PROJ-1/ change_colours
  • 15. A BRIEF EXAMPLE • Dev complete, merge into testing master staging FT/PROJ-1/ change_colours REL/1.0/rework_buttons
  • 16. A BRIEF EXAMPLE • Dev complete, merge into testing master staging (PROJ-1) REL/1.0/rework_buttons
  • 17. A BRIEF EXAMPLE • Testing complete and meets definition of done Merge into release branch master staging (PROJ-1) REL/1.0/rework_buttons FT/PROJ-1/ change_colours
  • 18. A BRIEF EXAMPLE • Testing complete and meets definition of done Merge into release branch master staging (PROJ-1) REL/1.0/rework_buttons (PROJ-1)
  • 19. A BRIEF EXAMPLE • OH NO! A 🐞 master staging (PROJ-1) REL/1.0/rework_buttons (PROJ-1) SD/ISSUE-2/fix_bug
  • 20. A BRIEF EXAMPLE • 🐞fix test master staging (PROJ-1) SD/ISSUE-2/fix_bug REL/1.0/rework_buttons (PROJ-1)
  • 21. A BRIEF EXAMPLE • 🐞fix test master staging (PROJ-1) (ISSUE-2) REL/1.0/rework_buttons (PROJ-1)
  • 22. A BRIEF EXAMPLE • Deploy the 🐞 fix master staging (PROJ-1) (ISSUE-2) REL/1.0/rework_buttons (PROJ-1) SD/ISSUE-2/fix_bug
  • 23. A BRIEF EXAMPLE • Deploy the 🐞 fix master (ISSUE-2) staging (PROJ-1) (ISSUE-2) REL/1.0/rework_buttons (PROJ-1)
  • 24. A BRIEF EXAMPLE • Sprint is complete Lets deploy to production! master (ISSUE-2) staging (PROJ-1) (ISSUE-2) REL/1.0/rework_buttons (PROJ-1)
  • 25. A BRIEF EXAMPLE • Sprint is complete Lets deploy to production! master (ISSUE-2) (PROJ-1) staging (PROJ-1) (ISSUE-2)