SlideShare a Scribd company logo
Version Control & Git


Geoff Ford & Craig Smith
Suncorp
According to
                                                                                    Wikipedia:
                                                                                   “… is the
                                                                                    management of
                                                                                    changes to
                                                                                    documents,
                                                                                    programs, and
                                                                                    other information
                                                                                    stored as
                                                                                    computer files.”
Image: http://i.ehow.com/images/GlobalPhoto/Articles/2065416/dictionary_Full.jpg
Before
                                                                          Version
                                                                          Control
                                                                        File renaming
                                                                            Code.001
                                                                            CodeNov1.xml
                                                                        Directories
                                                                            Nov1Code
                                                                        Zip files
                                                                            Nov1Code.zip
                                                                        Nothing at all
Image: http://www.stud.u-szeged.hu/Sajben.Emma/TW1128-Rock-Stars.jpg
We have
                                                                        moved on…

                                                                         haven’t
                                                                          we?

Image http://yabadabadoo.files.wordpress.com/2008/03/puzzled-fred.jpg
A Brief History




                    • diff                                           • RVS                                                           DVCS
                                                                                                                 Tool
    1970’s          • SCCS
                                                     1980’s          • CVS
                                                                                                      1990’s   Support
                                                                                                                         2000’s   (Bitkeeper,
                                                                                                                                   Git, etc…)




Image http://www.free-background-wallpaper.com/images/Wallpapers1280/Beach-Wallpaper/Sand-Dunes-Soft.jpg
Version
Control is…

   Backup & restore
   Synchronisation
   Undo
   Track changes
   Sandbox / spike
   Branch / merge
   Not just for code

                        Image http://globalnerdy.com/wordpress/wp-content/uploads/2007/10/version_control_star_trek_style.jpg
Check-in
    &
Check-out
Branching
    &
 Merging
Subversion
  Setup



             Image http://blog.daemon.com.au/images/SourceImage/svnstructure.jpg
Version Control
                                                                       Best Practice

                                                                     Use good comments
                                                                     Commit often
                                                                     Single vs multi project repos
                                                                     Branch/tag when appropriate
                                                                     Binaries/large files
                                                                     Respect the trunk
                                                                     Get to know your
                                                                        command line & client
Image http://www.improvizations.com/Portals/42614/images//best-
practice%20checklist-resized-600.jpg
• d




Visualisation: FishEye/SVNStat
Traditonal /
Centralised
  Version
  Control
Distributed
  Version
  Control
Hybrid
 Model
Version
Control
Why Distributed
 Version Control?

 Cheap local branches for
 easy experimenting
 History aware merges
 Full local history
 Offline commits
 Each working copy is a
 complete backup of the
 repository
Example Distributed
   Version Control
        Tools
 Git (2005)
    http://git-scm.com
 Mercurial (2005)
     http://mercurial.selenic.com
 Bazaar (2005)
     http://bazaar-vcs.org
 Darcs (2004)
     http://darcs.net
Git is Fast
Git is Efficient
Git Workflow
Clone
 git clone git://example.com/repo.git
Working Branch
 git checkout -b new-feature
Commit
 git add .
 git commit -m “Commit Message”
Rebase & Merge
 git rebase master
 git checkout master
 git merge new-feature
Push
 git push origin
Git + SVN Workflow
Clone
 git svn clone http://example.com/repo
Working Branch
 git checkout -b new-feature
Commit
 git add .
 git commit -m “Commit Message”
Rebase & Merge
 git rebase master
 git checkout master
 git merge new-feature
Push to SVN
 git dcommit
Repository Many Branches
Many Branches + Merges
Live
Demo
Want More Information?
Geoff Ford
geoff.ford@suncorp.com.au
Craig Smith
craig.smith@suncorp.com.au

References:
 http://www.spearce.org/2007/07/difficult-gitk-
   graphs.html
 http://www.infoq.com/articles/dvcs-guide
 http://ldn.linuxfoundation.org/article/dvcs-round-one-
   system-rule-them-all-part-3
 http://gaveen.owain.org/2008/05/simple-diagram-on-
   distributed-vcs-hint.html
 http://betterexplained.com/articles/a-visual-guide-to-
   version-control/
 http://en.wikipedia.org/wiki/Revision_control

More Related Content

What's hot

Understanding GIT and Version Control
Understanding GIT and Version ControlUnderstanding GIT and Version Control
Understanding GIT and Version Control
Sourabh Sahu
 
Version control system and Git
Version control system and GitVersion control system and Git
Version control system and Git
ramubonkuri
 
Intro to git and git hub
Intro to git and git hubIntro to git and git hub
Intro to git and git hub
Venkat Malladi
 
GIT presentation
GIT presentationGIT presentation
GIT presentation
Naim Latifi
 
GitHub Presentation
GitHub PresentationGitHub Presentation
GitHub Presentation
BrianSchilder
 
Subversion
SubversionSubversion
Version Control System
Version Control SystemVersion Control System
Version Control System
guptaanil
 
Introduction to Gitlab | Gitlab 101 | Training Session
Introduction to Gitlab | Gitlab 101 | Training SessionIntroduction to Gitlab | Gitlab 101 | Training Session
Introduction to Gitlab | Gitlab 101 | Training Session
Anwarul Islam
 
Git n git hub
Git n git hubGit n git hub
Git n git hub
Jiwon Baek
 
Maven Introduction
Maven IntroductionMaven Introduction
Maven Introduction
Sandeep Chawla
 
Introduction to Git
Introduction to GitIntroduction to Git
Introduction to Git
Yan Vugenfirer
 
A brief introduction to version control systems
A brief introduction to version control systemsA brief introduction to version control systems
A brief introduction to version control systems
Tim Staley
 
Github - Git Training Slides: Foundations
Github - Git Training Slides: FoundationsGithub - Git Training Slides: Foundations
Github - Git Training Slides: Foundations
Lee Hanxue
 
git and github
git and githubgit and github
git and github
Darren Oakley
 
Git Tutorial For Beginners | What is Git and GitHub? | DevOps Tools | DevOps ...
Git Tutorial For Beginners | What is Git and GitHub? | DevOps Tools | DevOps ...Git Tutorial For Beginners | What is Git and GitHub? | DevOps Tools | DevOps ...
Git Tutorial For Beginners | What is Git and GitHub? | DevOps Tools | DevOps ...
Simplilearn
 
Introduction to github slideshare
Introduction to github slideshareIntroduction to github slideshare
Introduction to github slideshare
Rakesh Sukumar
 
Version control system
Version control systemVersion control system
Version control system
Aryman Gautam
 
Git and GitHub
Git and GitHubGit and GitHub
Git and GitHub
Md. Ahsan Habib Nayan
 
Git and Github slides.pdf
Git and Github slides.pdfGit and Github slides.pdf
Git and Github slides.pdf
Tilton2
 
Git and github 101
Git and github 101Git and github 101
Git and github 101
Senthilkumar Gopal
 

What's hot (20)

Understanding GIT and Version Control
Understanding GIT and Version ControlUnderstanding GIT and Version Control
Understanding GIT and Version Control
 
Version control system and Git
Version control system and GitVersion control system and Git
Version control system and Git
 
Intro to git and git hub
Intro to git and git hubIntro to git and git hub
Intro to git and git hub
 
GIT presentation
GIT presentationGIT presentation
GIT presentation
 
GitHub Presentation
GitHub PresentationGitHub Presentation
GitHub Presentation
 
Subversion
SubversionSubversion
Subversion
 
Version Control System
Version Control SystemVersion Control System
Version Control System
 
Introduction to Gitlab | Gitlab 101 | Training Session
Introduction to Gitlab | Gitlab 101 | Training SessionIntroduction to Gitlab | Gitlab 101 | Training Session
Introduction to Gitlab | Gitlab 101 | Training Session
 
Git n git hub
Git n git hubGit n git hub
Git n git hub
 
Maven Introduction
Maven IntroductionMaven Introduction
Maven Introduction
 
Introduction to Git
Introduction to GitIntroduction to Git
Introduction to Git
 
A brief introduction to version control systems
A brief introduction to version control systemsA brief introduction to version control systems
A brief introduction to version control systems
 
Github - Git Training Slides: Foundations
Github - Git Training Slides: FoundationsGithub - Git Training Slides: Foundations
Github - Git Training Slides: Foundations
 
git and github
git and githubgit and github
git and github
 
Git Tutorial For Beginners | What is Git and GitHub? | DevOps Tools | DevOps ...
Git Tutorial For Beginners | What is Git and GitHub? | DevOps Tools | DevOps ...Git Tutorial For Beginners | What is Git and GitHub? | DevOps Tools | DevOps ...
Git Tutorial For Beginners | What is Git and GitHub? | DevOps Tools | DevOps ...
 
Introduction to github slideshare
Introduction to github slideshareIntroduction to github slideshare
Introduction to github slideshare
 
Version control system
Version control systemVersion control system
Version control system
 
Git and GitHub
Git and GitHubGit and GitHub
Git and GitHub
 
Git and Github slides.pdf
Git and Github slides.pdfGit and Github slides.pdf
Git and Github slides.pdf
 
Git and github 101
Git and github 101Git and github 101
Git and github 101
 

Viewers also liked

What is version control software and why do you need it?
What is version control software and why do you need it?What is version control software and why do you need it?
What is version control software and why do you need it?
Leonid Mamchenkov
 
Quick Introduction to git
Quick Introduction to gitQuick Introduction to git
Quick Introduction to gitJoel Krebs
 
Git 101 - Crash Course in Version Control using Git
Git 101 - Crash Course in Version Control using GitGit 101 - Crash Course in Version Control using Git
Git 101 - Crash Course in Version Control using Git
Geoff Hoffman
 
Version Control with SVN
Version Control with SVNVersion Control with SVN
Version Control with SVN
PHPBelgium
 
Introduction to Git/Github - A beginner's guide
Introduction to Git/Github - A beginner's guideIntroduction to Git/Github - A beginner's guide
Introduction to Git/Github - A beginner's guide
Rohit Arora
 
Git Branching Model
Git Branching ModelGit Branching Model
Git Branching Model
Lemi Orhan Ergin
 
State of the Art: Methods and Tools for Archival Processing Metrics
State of the Art: Methods and Tools for Archival Processing MetricsState of the Art: Methods and Tools for Archival Processing Metrics
State of the Art: Methods and Tools for Archival Processing Metrics
Audra Eagle Yun
 
Distributed Version Control Systems in the Enterprise - Atlassian Summit 2010
Distributed Version Control Systems in the Enterprise - Atlassian Summit 2010Distributed Version Control Systems in the Enterprise - Atlassian Summit 2010
Distributed Version Control Systems in the Enterprise - Atlassian Summit 2010
Atlassian
 
Versioning for Developers
Versioning for DevelopersVersioning for Developers
Versioning for Developers
Michelangelo van Dam
 
Git Version Control System
Git Version Control SystemGit Version Control System
Git Version Control System
S. M. Masoud Sadrnezhaad
 
Tour Thái Lan 4N3D 4tr999 tại tugo.com.vn
Tour Thái Lan 4N3D 4tr999 tại tugo.com.vnTour Thái Lan 4N3D 4tr999 tại tugo.com.vn
Tour Thái Lan 4N3D 4tr999 tại tugo.com.vn
Bao Nguyen Minh
 
Git How Does That Work Then
Git How Does That Work ThenGit How Does That Work Then
Git How Does That Work Then
David Greaves
 
Git in gear: How to track changes, travel back in time, and code nicely with ...
Git in gear: How to track changes, travel back in time, and code nicely with ...Git in gear: How to track changes, travel back in time, and code nicely with ...
Git in gear: How to track changes, travel back in time, and code nicely with ...
fureigh
 
Controle de versão
Controle de versãoControle de versão
Controle de versãoZé Pereira
 
Controle de versão - GIT
Controle de versão - GITControle de versão - GIT
Controle de versão - GIT
Jefferson Lima
 
GIT Fundamentals
GIT FundamentalsGIT Fundamentals
GIT Fundamentals
Abderrazak BOUADMA
 
Git - Controle de Versão Inteligente
Git - Controle de Versão InteligenteGit - Controle de Versão Inteligente
Git - Controle de Versão Inteligente
Adriano Rocha
 
Git advanced
Git advancedGit advanced
Git advanced
Peter Vandenabeele
 

Viewers also liked (20)

What is version control software and why do you need it?
What is version control software and why do you need it?What is version control software and why do you need it?
What is version control software and why do you need it?
 
Quick Introduction to git
Quick Introduction to gitQuick Introduction to git
Quick Introduction to git
 
Git 101 - Crash Course in Version Control using Git
Git 101 - Crash Course in Version Control using GitGit 101 - Crash Course in Version Control using Git
Git 101 - Crash Course in Version Control using Git
 
Version Control with SVN
Version Control with SVNVersion Control with SVN
Version Control with SVN
 
Introduction to Git/Github - A beginner's guide
Introduction to Git/Github - A beginner's guideIntroduction to Git/Github - A beginner's guide
Introduction to Git/Github - A beginner's guide
 
Git Branching Model
Git Branching ModelGit Branching Model
Git Branching Model
 
State of the Art: Methods and Tools for Archival Processing Metrics
State of the Art: Methods and Tools for Archival Processing MetricsState of the Art: Methods and Tools for Archival Processing Metrics
State of the Art: Methods and Tools for Archival Processing Metrics
 
Distributed Version Control Systems in the Enterprise - Atlassian Summit 2010
Distributed Version Control Systems in the Enterprise - Atlassian Summit 2010Distributed Version Control Systems in the Enterprise - Atlassian Summit 2010
Distributed Version Control Systems in the Enterprise - Atlassian Summit 2010
 
Versioning for Developers
Versioning for DevelopersVersioning for Developers
Versioning for Developers
 
Git Version Control System
Git Version Control SystemGit Version Control System
Git Version Control System
 
Tour Thái Lan 4N3D 4tr999 tại tugo.com.vn
Tour Thái Lan 4N3D 4tr999 tại tugo.com.vnTour Thái Lan 4N3D 4tr999 tại tugo.com.vn
Tour Thái Lan 4N3D 4tr999 tại tugo.com.vn
 
Git
GitGit
Git
 
Git How Does That Work Then
Git How Does That Work ThenGit How Does That Work Then
Git How Does That Work Then
 
Git in gear: How to track changes, travel back in time, and code nicely with ...
Git in gear: How to track changes, travel back in time, and code nicely with ...Git in gear: How to track changes, travel back in time, and code nicely with ...
Git in gear: How to track changes, travel back in time, and code nicely with ...
 
Controle de versão
Controle de versãoControle de versão
Controle de versão
 
Controle de versão - GIT
Controle de versão - GITControle de versão - GIT
Controle de versão - GIT
 
GIT Fundamentals
GIT FundamentalsGIT Fundamentals
GIT Fundamentals
 
Git in 5 Minutes
Git in 5 MinutesGit in 5 Minutes
Git in 5 Minutes
 
Git - Controle de Versão Inteligente
Git - Controle de Versão InteligenteGit - Controle de Versão Inteligente
Git - Controle de Versão Inteligente
 
Git advanced
Git advancedGit advanced
Git advanced
 

Similar to Version Control & Git

fiwalk With Me: Building Emergent Pre-Ingest Workflows for Digital Archival R...
fiwalk With Me: Building Emergent Pre-Ingest Workflows for Digital Archival R...fiwalk With Me: Building Emergent Pre-Ingest Workflows for Digital Archival R...
fiwalk With Me: Building Emergent Pre-Ingest Workflows for Digital Archival R...Mark Matienzo
 
Cloud Foundry Open Tour - London
Cloud Foundry Open Tour - LondonCloud Foundry Open Tour - London
Cloud Foundry Open Tour - London
marklucovsky
 
Configuration Management and Transforming Legacy Applications in the Enterpri...
Configuration Management and Transforming Legacy Applications in the Enterpri...Configuration Management and Transforming Legacy Applications in the Enterpri...
Configuration Management and Transforming Legacy Applications in the Enterpri...
Docker, Inc.
 
Maven introduction in Mule
Maven introduction in MuleMaven introduction in Mule
Maven introduction in Mule
Shahid Shaik
 
Digital Forensics for Digital Archives
Digital Forensics for Digital ArchivesDigital Forensics for Digital Archives
Digital Forensics for Digital Archives
Mark Matienzo
 
Cloud Native Computing - Part III - Containers
Cloud Native Computing - Part III - ContainersCloud Native Computing - Part III - Containers
Cloud Native Computing - Part III - Containers
Linjith Kunnon
 
Maven
MavenMaven
Mercurial - Distributed Version Controlling
Mercurial - Distributed Version Controlling Mercurial - Distributed Version Controlling
Mercurial - Distributed Version Controlling
Jayantha Sirisena
 
Maven in Mule
Maven in MuleMaven in Mule
Maven in Mule
Anand kalla
 
RSA conference poster on Docker container security
RSA conference poster on Docker container securityRSA conference poster on Docker container security
RSA conference poster on Docker container security
Manideep Konakandla
 
KubeCon 2017: Kubernetes from Dev to Prod
KubeCon 2017: Kubernetes from Dev to ProdKubeCon 2017: Kubernetes from Dev to Prod
KubeCon 2017: Kubernetes from Dev to Prod
Subhas Dandapani
 
Maven 3 Overview
Maven 3  OverviewMaven 3  Overview
Maven 3 Overview
Mike Ensor
 
Deployment Tactics
Deployment TacticsDeployment Tactics
Deployment Tactics
Ian Barber
 
Cloud Foundry Anniversary: Technical Slides
Cloud Foundry Anniversary: Technical Slides Cloud Foundry Anniversary: Technical Slides
Cloud Foundry Anniversary: Technical Slides
marklucovsky
 
Oaf development-guide
Oaf development-guideOaf development-guide
Oaf development-guide俊 朱
 
ITECH Kenya presentation on OpenMRS Developers Forum
ITECH Kenya presentation on OpenMRS Developers ForumITECH Kenya presentation on OpenMRS Developers Forum
ITECH Kenya presentation on OpenMRS Developers Forumdjazayeri
 
Ibm data stage implementing etl solution using ibm datastage
Ibm data stage  implementing etl solution using ibm datastageIbm data stage  implementing etl solution using ibm datastage
Ibm data stage implementing etl solution using ibm datastage
bispsolutions
 
Datastage coursecontent
Datastage coursecontentDatastage coursecontent
Datastage coursecontentAmit Sharma
 
Stairway to heaven webinar
Stairway to heaven webinarStairway to heaven webinar
Stairway to heaven webinarCloudBees
 

Similar to Version Control & Git (20)

fiwalk With Me: Building Emergent Pre-Ingest Workflows for Digital Archival R...
fiwalk With Me: Building Emergent Pre-Ingest Workflows for Digital Archival R...fiwalk With Me: Building Emergent Pre-Ingest Workflows for Digital Archival R...
fiwalk With Me: Building Emergent Pre-Ingest Workflows for Digital Archival R...
 
Cloud Foundry Open Tour - London
Cloud Foundry Open Tour - LondonCloud Foundry Open Tour - London
Cloud Foundry Open Tour - London
 
Configuration Management and Transforming Legacy Applications in the Enterpri...
Configuration Management and Transforming Legacy Applications in the Enterpri...Configuration Management and Transforming Legacy Applications in the Enterpri...
Configuration Management and Transforming Legacy Applications in the Enterpri...
 
Maven introduction in Mule
Maven introduction in MuleMaven introduction in Mule
Maven introduction in Mule
 
Digital Forensics for Digital Archives
Digital Forensics for Digital ArchivesDigital Forensics for Digital Archives
Digital Forensics for Digital Archives
 
Cloud Native Computing - Part III - Containers
Cloud Native Computing - Part III - ContainersCloud Native Computing - Part III - Containers
Cloud Native Computing - Part III - Containers
 
Maven
MavenMaven
Maven
 
Maven
MavenMaven
Maven
 
Mercurial - Distributed Version Controlling
Mercurial - Distributed Version Controlling Mercurial - Distributed Version Controlling
Mercurial - Distributed Version Controlling
 
Maven in Mule
Maven in MuleMaven in Mule
Maven in Mule
 
RSA conference poster on Docker container security
RSA conference poster on Docker container securityRSA conference poster on Docker container security
RSA conference poster on Docker container security
 
KubeCon 2017: Kubernetes from Dev to Prod
KubeCon 2017: Kubernetes from Dev to ProdKubeCon 2017: Kubernetes from Dev to Prod
KubeCon 2017: Kubernetes from Dev to Prod
 
Maven 3 Overview
Maven 3  OverviewMaven 3  Overview
Maven 3 Overview
 
Deployment Tactics
Deployment TacticsDeployment Tactics
Deployment Tactics
 
Cloud Foundry Anniversary: Technical Slides
Cloud Foundry Anniversary: Technical Slides Cloud Foundry Anniversary: Technical Slides
Cloud Foundry Anniversary: Technical Slides
 
Oaf development-guide
Oaf development-guideOaf development-guide
Oaf development-guide
 
ITECH Kenya presentation on OpenMRS Developers Forum
ITECH Kenya presentation on OpenMRS Developers ForumITECH Kenya presentation on OpenMRS Developers Forum
ITECH Kenya presentation on OpenMRS Developers Forum
 
Ibm data stage implementing etl solution using ibm datastage
Ibm data stage  implementing etl solution using ibm datastageIbm data stage  implementing etl solution using ibm datastage
Ibm data stage implementing etl solution using ibm datastage
 
Datastage coursecontent
Datastage coursecontentDatastage coursecontent
Datastage coursecontent
 
Stairway to heaven webinar
Stairway to heaven webinarStairway to heaven webinar
Stairway to heaven webinar
 

More from Craig Smith

40 Agile Methods in 40 Minutes
40 Agile Methods in 40 Minutes40 Agile Methods in 40 Minutes
40 Agile Methods in 40 Minutes
Craig Smith
 
Code of Ethical Conduct for Agile Coaching
Code of Ethical Conduct for Agile CoachingCode of Ethical Conduct for Agile Coaching
Code of Ethical Conduct for Agile Coaching
Craig Smith
 
Public Sector Agility Accelerator
Public Sector Agility AcceleratorPublic Sector Agility Accelerator
Public Sector Agility Accelerator
Craig Smith
 
Rethinking Retrospectives: Beyond the Three Columns
Rethinking Retrospectives: Beyond the Three ColumnsRethinking Retrospectives: Beyond the Three Columns
Rethinking Retrospectives: Beyond the Three Columns
Craig Smith
 
Agile Coaching Ethics - The Powerful Questions Behind What, Why & How
Agile Coaching Ethics - The Powerful Questions Behind What, Why & HowAgile Coaching Ethics - The Powerful Questions Behind What, Why & How
Agile Coaching Ethics - The Powerful Questions Behind What, Why & How
Craig Smith
 
Public Sector Agility Accelerator
Public Sector Agility AcceleratorPublic Sector Agility Accelerator
Public Sector Agility Accelerator
Craig Smith
 
Public Sector Agility Accelerator
Public Sector Agility AcceleratorPublic Sector Agility Accelerator
Public Sector Agility Accelerator
Craig Smith
 
Agility Accelerator
Agility AcceleratorAgility Accelerator
Agility Accelerator
Craig Smith
 
FailAgility: Recognising and Resetting the Agile Boundaries
FailAgility: Recognising and Resetting the Agile BoundariesFailAgility: Recognising and Resetting the Agile Boundaries
FailAgility: Recognising and Resetting the Agile Boundaries
Craig Smith
 
Mind the Gap: Realising the Value of Agility
Mind the Gap: Realising the Value of AgilityMind the Gap: Realising the Value of Agility
Mind the Gap: Realising the Value of Agility
Craig Smith
 
Mind the Gap: Realising the Value of Agility
Mind the Gap: Realising the Value of AgilityMind the Gap: Realising the Value of Agility
Mind the Gap: Realising the Value of Agility
Craig Smith
 
40 Agile Methods in 40 Minutes
40 Agile Methods in 40 Minutes40 Agile Methods in 40 Minutes
40 Agile Methods in 40 Minutes
Craig Smith
 
Agile Coaching Nightmares: Lessons We Can Learn From Gordon Ramsay
Agile Coaching Nightmares: Lessons We Can Learn From Gordon RamsayAgile Coaching Nightmares: Lessons We Can Learn From Gordon Ramsay
Agile Coaching Nightmares: Lessons We Can Learn From Gordon Ramsay
Craig Smith
 
Agile 2008 Retrospective
Agile 2008 RetrospectiveAgile 2008 Retrospective
Agile 2008 Retrospective
Craig Smith
 
Technical Lessons Learned Turning the Agile Dials to Eleven!
Technical Lessons Learned Turning the Agile Dials to Eleven!Technical Lessons Learned Turning the Agile Dials to Eleven!
Technical Lessons Learned Turning the Agile Dials to Eleven!
Craig Smith
 
Agile Project Experiences - The Story of Three Little Pigs
Agile Project Experiences - The Story of Three Little PigsAgile Project Experiences - The Story of Three Little Pigs
Agile Project Experiences - The Story of Three Little Pigs
Craig Smith
 
Agile Coaching Nightmares: Lessons We Can Learn From Gordon Ramsay
Agile Coaching Nightmares: Lessons We Can Learn From Gordon RamsayAgile Coaching Nightmares: Lessons We Can Learn From Gordon Ramsay
Agile Coaching Nightmares: Lessons We Can Learn From Gordon Ramsay
Craig Smith
 
Coaching Nightmares: Lessons We Can Learn From Gordon Ramsay
Coaching Nightmares: Lessons We Can Learn From Gordon RamsayCoaching Nightmares: Lessons We Can Learn From Gordon Ramsay
Coaching Nightmares: Lessons We Can Learn From Gordon Ramsay
Craig Smith
 
Coaching Nightmares: Lessons We Can Learn From Gordon Ramsay
Coaching Nightmares: Lessons We Can Learn From Gordon RamsayCoaching Nightmares: Lessons We Can Learn From Gordon Ramsay
Coaching Nightmares: Lessons We Can Learn From Gordon Ramsay
Craig Smith
 
40 Agile Methods in 40 Minutes
40 Agile Methods in 40 Minutes40 Agile Methods in 40 Minutes
40 Agile Methods in 40 Minutes
Craig Smith
 

More from Craig Smith (20)

40 Agile Methods in 40 Minutes
40 Agile Methods in 40 Minutes40 Agile Methods in 40 Minutes
40 Agile Methods in 40 Minutes
 
Code of Ethical Conduct for Agile Coaching
Code of Ethical Conduct for Agile CoachingCode of Ethical Conduct for Agile Coaching
Code of Ethical Conduct for Agile Coaching
 
Public Sector Agility Accelerator
Public Sector Agility AcceleratorPublic Sector Agility Accelerator
Public Sector Agility Accelerator
 
Rethinking Retrospectives: Beyond the Three Columns
Rethinking Retrospectives: Beyond the Three ColumnsRethinking Retrospectives: Beyond the Three Columns
Rethinking Retrospectives: Beyond the Three Columns
 
Agile Coaching Ethics - The Powerful Questions Behind What, Why & How
Agile Coaching Ethics - The Powerful Questions Behind What, Why & HowAgile Coaching Ethics - The Powerful Questions Behind What, Why & How
Agile Coaching Ethics - The Powerful Questions Behind What, Why & How
 
Public Sector Agility Accelerator
Public Sector Agility AcceleratorPublic Sector Agility Accelerator
Public Sector Agility Accelerator
 
Public Sector Agility Accelerator
Public Sector Agility AcceleratorPublic Sector Agility Accelerator
Public Sector Agility Accelerator
 
Agility Accelerator
Agility AcceleratorAgility Accelerator
Agility Accelerator
 
FailAgility: Recognising and Resetting the Agile Boundaries
FailAgility: Recognising and Resetting the Agile BoundariesFailAgility: Recognising and Resetting the Agile Boundaries
FailAgility: Recognising and Resetting the Agile Boundaries
 
Mind the Gap: Realising the Value of Agility
Mind the Gap: Realising the Value of AgilityMind the Gap: Realising the Value of Agility
Mind the Gap: Realising the Value of Agility
 
Mind the Gap: Realising the Value of Agility
Mind the Gap: Realising the Value of AgilityMind the Gap: Realising the Value of Agility
Mind the Gap: Realising the Value of Agility
 
40 Agile Methods in 40 Minutes
40 Agile Methods in 40 Minutes40 Agile Methods in 40 Minutes
40 Agile Methods in 40 Minutes
 
Agile Coaching Nightmares: Lessons We Can Learn From Gordon Ramsay
Agile Coaching Nightmares: Lessons We Can Learn From Gordon RamsayAgile Coaching Nightmares: Lessons We Can Learn From Gordon Ramsay
Agile Coaching Nightmares: Lessons We Can Learn From Gordon Ramsay
 
Agile 2008 Retrospective
Agile 2008 RetrospectiveAgile 2008 Retrospective
Agile 2008 Retrospective
 
Technical Lessons Learned Turning the Agile Dials to Eleven!
Technical Lessons Learned Turning the Agile Dials to Eleven!Technical Lessons Learned Turning the Agile Dials to Eleven!
Technical Lessons Learned Turning the Agile Dials to Eleven!
 
Agile Project Experiences - The Story of Three Little Pigs
Agile Project Experiences - The Story of Three Little PigsAgile Project Experiences - The Story of Three Little Pigs
Agile Project Experiences - The Story of Three Little Pigs
 
Agile Coaching Nightmares: Lessons We Can Learn From Gordon Ramsay
Agile Coaching Nightmares: Lessons We Can Learn From Gordon RamsayAgile Coaching Nightmares: Lessons We Can Learn From Gordon Ramsay
Agile Coaching Nightmares: Lessons We Can Learn From Gordon Ramsay
 
Coaching Nightmares: Lessons We Can Learn From Gordon Ramsay
Coaching Nightmares: Lessons We Can Learn From Gordon RamsayCoaching Nightmares: Lessons We Can Learn From Gordon Ramsay
Coaching Nightmares: Lessons We Can Learn From Gordon Ramsay
 
Coaching Nightmares: Lessons We Can Learn From Gordon Ramsay
Coaching Nightmares: Lessons We Can Learn From Gordon RamsayCoaching Nightmares: Lessons We Can Learn From Gordon Ramsay
Coaching Nightmares: Lessons We Can Learn From Gordon Ramsay
 
40 Agile Methods in 40 Minutes
40 Agile Methods in 40 Minutes40 Agile Methods in 40 Minutes
40 Agile Methods in 40 Minutes
 

Recently uploaded

Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
OnBoard
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
Paul Groth
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
Guy Korland
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Inflectra
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
Laura Byrne
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Product School
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Jeffrey Haguewood
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
Frank van Harmelen
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
Elena Simperl
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
ThousandEyes
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
Prayukth K V
 
ODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User GroupODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User Group
CatarinaPereira64715
 
Search and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical FuturesSearch and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical Futures
Bhaskar Mitra
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
Alison B. Lowndes
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
DianaGray10
 

Recently uploaded (20)

Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
 
ODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User GroupODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User Group
 
Search and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical FuturesSearch and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical Futures
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
 

Version Control & Git

  • 1. Version Control & Git Geoff Ford & Craig Smith Suncorp
  • 2. According to Wikipedia: “… is the management of changes to documents, programs, and other information stored as computer files.” Image: http://i.ehow.com/images/GlobalPhoto/Articles/2065416/dictionary_Full.jpg
  • 3. Before Version Control  File renaming Code.001 CodeNov1.xml  Directories Nov1Code  Zip files Nov1Code.zip  Nothing at all Image: http://www.stud.u-szeged.hu/Sajben.Emma/TW1128-Rock-Stars.jpg
  • 4. We have moved on… haven’t we? Image http://yabadabadoo.files.wordpress.com/2008/03/puzzled-fred.jpg
  • 5. A Brief History • diff • RVS DVCS Tool 1970’s • SCCS 1980’s • CVS 1990’s Support 2000’s (Bitkeeper, Git, etc…) Image http://www.free-background-wallpaper.com/images/Wallpapers1280/Beach-Wallpaper/Sand-Dunes-Soft.jpg
  • 6. Version Control is…  Backup & restore  Synchronisation  Undo  Track changes  Sandbox / spike  Branch / merge  Not just for code Image http://globalnerdy.com/wordpress/wp-content/uploads/2007/10/version_control_star_trek_style.jpg
  • 7. Check-in & Check-out
  • 8. Branching & Merging
  • 9. Subversion Setup Image http://blog.daemon.com.au/images/SourceImage/svnstructure.jpg
  • 10. Version Control Best Practice  Use good comments  Commit often  Single vs multi project repos  Branch/tag when appropriate  Binaries/large files  Respect the trunk  Get to know your command line & client Image http://www.improvizations.com/Portals/42614/images//best- practice%20checklist-resized-600.jpg
  • 12. Traditonal / Centralised Version Control
  • 15. Why Distributed Version Control?  Cheap local branches for easy experimenting  History aware merges  Full local history  Offline commits  Each working copy is a complete backup of the repository
  • 16. Example Distributed Version Control Tools  Git (2005) http://git-scm.com  Mercurial (2005) http://mercurial.selenic.com  Bazaar (2005) http://bazaar-vcs.org  Darcs (2004) http://darcs.net
  • 19. Git Workflow Clone git clone git://example.com/repo.git Working Branch git checkout -b new-feature Commit git add . git commit -m “Commit Message” Rebase & Merge git rebase master git checkout master git merge new-feature Push git push origin
  • 20. Git + SVN Workflow Clone git svn clone http://example.com/repo Working Branch git checkout -b new-feature Commit git add . git commit -m “Commit Message” Rebase & Merge git rebase master git checkout master git merge new-feature Push to SVN git dcommit
  • 22. Many Branches + Merges
  • 24. Want More Information? Geoff Ford geoff.ford@suncorp.com.au Craig Smith craig.smith@suncorp.com.au References:  http://www.spearce.org/2007/07/difficult-gitk- graphs.html  http://www.infoq.com/articles/dvcs-guide  http://ldn.linuxfoundation.org/article/dvcs-round-one- system-rule-them-all-part-3  http://gaveen.owain.org/2008/05/simple-diagram-on- distributed-vcs-hint.html  http://betterexplained.com/articles/a-visual-guide-to- version-control/  http://en.wikipedia.org/wiki/Revision_control