SlideShare a Scribd company logo
1 of 59
Download to read offline
Making the Switch to DVCS
Atlassians move from centralized to distributed




Sven Peters, Ambassador, Atlassian

                                                  2
DVCS @ Unite
DVCS @ Unite




        Issue Tracker
DVCS @ Unite




     Content Collaboration
build it




    check               get
?     in               Task



            write
            code
What is version control?
What is version control?




  Collaboration   History   Copies /Branches
The Past
Centralized Version Control

              Subversion
                server
Centralized Version Control

              Subversion
“   Have you ever tried to merge a branch back into the
    trunk with SVN? Need I say more.
                                       ”
Merge Time
The Present (and future)
Distributed Version Control
Distributed Version Control

                                             Git or Mercurial




      Git or Mercurial                                                             Git or Mercurial
                                            Git or Mercurial




                         Git or Mercurial                       Git or Mercurial
“   Distributed Version Control is flexible and can fit any
    workflow - you can even treat it like Subversion.
                                                             ”
                                           Steve Streeting
                                           Inventor of SourceTree
New idea?


            1997
             co-op
New idea?


            2001
             arch
New idea?


            2003
            monotone
New idea?


            2003
             svk
New idea?


            2003
             darcs
New idea?


            2005
            bazaar
New idea?


            2005
            mercurial
New idea?


            2005
             git
New idea?


            2007
            iPhone
Notice a Trend
Notice a Trend
DVCS @ Atlassian
Why?


Development Workflow
More Why’s?


Code without Limitations
       Dev Speed
Dev Speed
View File History
View Authors/Blame
Creating Branches
Speed is power
                         git rm
   hg blame
                                       hg clone
              git show
                              git mv
hg revert
                  git log
                                      hg move
hg pull -update          git status
Speed is power
                         git rm
   hg blame
                                       hg clone
              git show
                              git mv
hg revert
                  git log
                                      hg move
hg pull -update          git status
Commit Often
No Servers
Dev Speed
Code without Limitations
No Servers
Branching & Merging


    $ svn merge
Don‘t be afraid
Protips
• DVCS Knowledge
• Follow the Recipe
• CI is your friend
DVCS Knowledge
Make use of Guru
DVCS Client

              Git and Mercurial Mac Client
FishEye - VCS to DVCS

• See commits in SVN & DVCS
• Browse source in any VCS
  Subversion, Git, Hg, CVS, P4




   Browse and Search source across any VCS
Follow the Recipe
Bring your History
Tool Integration




    {              }
Replicate Team Process
Incremental Steps
Continuous Integration
is your friend



• Vital part of dev cycle
• Run same builds against old
  and new VCS
• Continuous Validation
Make the Switch
• DVCS has great business and technical benefits
• Atlassian is shaping the future of DVCS
Learn More & Have a Play

http://blogs.atlassian.com/tag/switch_dvcs/
http://answers.atlassian.com
@svenpet
svenpet.com   Thank You

More Related Content

What's hot

What's hot (20)

Continuously Integrating Distributed Code at Netflix
Continuously Integrating Distributed Code at NetflixContinuously Integrating Distributed Code at Netflix
Continuously Integrating Distributed Code at Netflix
 
7 tools for your devops stack
7 tools for your devops stack7 tools for your devops stack
7 tools for your devops stack
 
AtlasCamp 2014: A P2 Plugin and a SaaS Platform Walk Into a Bar
AtlasCamp 2014: A P2 Plugin and a SaaS Platform Walk Into a BarAtlasCamp 2014: A P2 Plugin and a SaaS Platform Walk Into a Bar
AtlasCamp 2014: A P2 Plugin and a SaaS Platform Walk Into a Bar
 
Ceylon From Here to Infinity: The Big Picture and What's Coming
Ceylon From Here to Infinity: The Big Picture and What's Coming Ceylon From Here to Infinity: The Big Picture and What's Coming
Ceylon From Here to Infinity: The Big Picture and What's Coming
 
AtlasCamp 2015: Plugins 2: All grown up
AtlasCamp 2015: Plugins 2: All grown upAtlasCamp 2015: Plugins 2: All grown up
AtlasCamp 2015: Plugins 2: All grown up
 
Docker Enables DevOps
Docker Enables DevOpsDocker Enables DevOps
Docker Enables DevOps
 
DevOps Engineer [Arabic]
DevOps Engineer [Arabic]DevOps Engineer [Arabic]
DevOps Engineer [Arabic]
 
Atlassian Roadshow 2016 - DevOps Session
Atlassian Roadshow 2016 - DevOps SessionAtlassian Roadshow 2016 - DevOps Session
Atlassian Roadshow 2016 - DevOps Session
 
CI doesn’t start with Jenkins
CI doesn’t start with JenkinsCI doesn’t start with Jenkins
CI doesn’t start with Jenkins
 
GitOps , done Right
GitOps , done RightGitOps , done Right
GitOps , done Right
 
Apache Lucene for Java EE Developers
Apache Lucene for Java EE DevelopersApache Lucene for Java EE Developers
Apache Lucene for Java EE Developers
 
Hadoop Summit 2013 : Continuous Integration on top of hadoop
Hadoop Summit 2013 : Continuous Integration on top of hadoopHadoop Summit 2013 : Continuous Integration on top of hadoop
Hadoop Summit 2013 : Continuous Integration on top of hadoop
 
Fabric8: Better Software Faster with Docker, Kubernetes, Jenkins
Fabric8: Better Software Faster with Docker, Kubernetes, JenkinsFabric8: Better Software Faster with Docker, Kubernetes, Jenkins
Fabric8: Better Software Faster with Docker, Kubernetes, Jenkins
 
Run stuff, Deploy Stuff, Jax London 2017 Edition
Run stuff, Deploy Stuff, Jax London 2017 EditionRun stuff, Deploy Stuff, Jax London 2017 Edition
Run stuff, Deploy Stuff, Jax London 2017 Edition
 
Rundeck + Nexus (from Nexus Live on June 5, 2014)
Rundeck + Nexus (from Nexus Live on June 5, 2014)Rundeck + Nexus (from Nexus Live on June 5, 2014)
Rundeck + Nexus (from Nexus Live on June 5, 2014)
 
Top 10 reasons to migrate to Gradle
Top 10 reasons to migrate to GradleTop 10 reasons to migrate to Gradle
Top 10 reasons to migrate to Gradle
 
Continous integration and delivery for single page applications
Continous integration and delivery for single page applicationsContinous integration and delivery for single page applications
Continous integration and delivery for single page applications
 
Blazing Fast Feedback Loops in the Java Universe
Blazing Fast Feedback Loops in the Java UniverseBlazing Fast Feedback Loops in the Java Universe
Blazing Fast Feedback Loops in the Java Universe
 
Deploying your SaaS stack OnPrem
Deploying your SaaS stack OnPremDeploying your SaaS stack OnPrem
Deploying your SaaS stack OnPrem
 
Introduction to DevOps
Introduction to DevOpsIntroduction to DevOps
Introduction to DevOps
 

Viewers also liked

Atlassian User Group Wiesbaden
Atlassian User Group WiesbadenAtlassian User Group Wiesbaden
Atlassian User Group Wiesbaden
Sven Peters
 
Atlassian Bonfire
Atlassian BonfireAtlassian Bonfire
Atlassian Bonfire
Sven Peters
 
W jax wenn-code altert
W jax  wenn-code altertW jax  wenn-code altert
W jax wenn-code altert
Sven Peters
 
Software Programming Principles
Software Programming PrinciplesSoftware Programming Principles
Software Programming Principles
Sven Peters
 

Viewers also liked (20)

Atlassian User Group Berlin Brandenburg
Atlassian User Group Berlin BrandenburgAtlassian User Group Berlin Brandenburg
Atlassian User Group Berlin Brandenburg
 
Passion For Software
Passion For SoftwarePassion For Software
Passion For Software
 
Aug Karlsruhe
Aug Karlsruhe Aug Karlsruhe
Aug Karlsruhe
 
7 Things: How to make good teams great
7 Things: How to make good teams great7 Things: How to make good teams great
7 Things: How to make good teams great
 
Atlassian User Group Wiesbaden
Atlassian User Group WiesbadenAtlassian User Group Wiesbaden
Atlassian User Group Wiesbaden
 
JIRA 4.4
JIRA 4.4JIRA 4.4
JIRA 4.4
 
Atlassian User Group Karlsruhe + München
Atlassian User Group Karlsruhe + MünchenAtlassian User Group Karlsruhe + München
Atlassian User Group Karlsruhe + München
 
Atlassian Bonfire
Atlassian BonfireAtlassian Bonfire
Atlassian Bonfire
 
Atlassian User Group NRW
Atlassian User Group NRWAtlassian User Group NRW
Atlassian User Group NRW
 
How to make good teams great
How to make good teams greatHow to make good teams great
How to make good teams great
 
W jax wenn-code altert
W jax  wenn-code altertW jax  wenn-code altert
W jax wenn-code altert
 
JIRA Enterprise
JIRA EnterpriseJIRA Enterprise
JIRA Enterprise
 
When code gets_older
When code gets_olderWhen code gets_older
When code gets_older
 
How effective feedback can improve your software
How effective feedback can improve your softwareHow effective feedback can improve your software
How effective feedback can improve your software
 
Keynote CCD 2011
Keynote CCD 2011Keynote CCD 2011
Keynote CCD 2011
 
Atlassian User Group Bielefeld
Atlassian User Group BielefeldAtlassian User Group Bielefeld
Atlassian User Group Bielefeld
 
Software Programming Principles
Software Programming PrinciplesSoftware Programming Principles
Software Programming Principles
 
Stash - We Code Together
Stash - We Code TogetherStash - We Code Together
Stash - We Code Together
 
Atlassian - The latest and greatest early 2013
Atlassian - The latest and greatest early 2013Atlassian - The latest and greatest early 2013
Atlassian - The latest and greatest early 2013
 
Confluence - From Wiki to Collaboration Platform
Confluence - From Wiki to Collaboration PlatformConfluence - From Wiki to Collaboration Platform
Confluence - From Wiki to Collaboration Platform
 

Similar to Making the switch to DVCS

AtlasCamp 2010: What is DVCS and why it will change the way we work - Jens Sc...
AtlasCamp 2010: What is DVCS and why it will change the way we work - Jens Sc...AtlasCamp 2010: What is DVCS and why it will change the way we work - Jens Sc...
AtlasCamp 2010: What is DVCS and why it will change the way we work - Jens Sc...
Atlassian
 
Svn vs mercurial vs github
Svn  vs  mercurial vs  githubSvn  vs  mercurial vs  github
Svn vs mercurial vs github
Vinoth Kannan
 
Embracing Distributed Version Control
Embracing Distributed Version ControlEmbracing Distributed Version Control
Embracing Distributed Version Control
Nowell Strite
 

Similar to Making the switch to DVCS (20)

Atlassian Developers switch to DVCS - Unite London conference
Atlassian Developers switch to DVCS - Unite London conferenceAtlassian Developers switch to DVCS - Unite London conference
Atlassian Developers switch to DVCS - Unite London conference
 
Git 101
Git 101Git 101
Git 101
 
Mercurial - Distributed Version Controlling
Mercurial - Distributed Version Controlling Mercurial - Distributed Version Controlling
Mercurial - Distributed Version Controlling
 
Git essential training & sharing self
Git essential training & sharing selfGit essential training & sharing self
Git essential training & sharing self
 
Session git
Session gitSession git
Session git
 
Git Presentation
Git PresentationGit Presentation
Git Presentation
 
Version Control Systems -- Git -- Part I
Version Control Systems -- Git -- Part IVersion Control Systems -- Git -- Part I
Version Control Systems -- Git -- Part I
 
An intro to git
An intro to gitAn intro to git
An intro to git
 
AtlasCamp 2010: What is DVCS and why it will change the way we work - Jens Sc...
AtlasCamp 2010: What is DVCS and why it will change the way we work - Jens Sc...AtlasCamp 2010: What is DVCS and why it will change the way we work - Jens Sc...
AtlasCamp 2010: What is DVCS and why it will change the way we work - Jens Sc...
 
Cloud Native CI/CD with GitOps
Cloud Native CI/CD with GitOpsCloud Native CI/CD with GitOps
Cloud Native CI/CD with GitOps
 
Subversion and bug tracking
Subversion and bug trackingSubversion and bug tracking
Subversion and bug tracking
 
The journey to GitOps
The journey to GitOpsThe journey to GitOps
The journey to GitOps
 
Svn vs mercurial vs github
Svn  vs  mercurial vs  githubSvn  vs  mercurial vs  github
Svn vs mercurial vs github
 
Gitting better
Gitting betterGitting better
Gitting better
 
Embracing Distributed Version Control
Embracing Distributed Version ControlEmbracing Distributed Version Control
Embracing Distributed Version Control
 
Git_tutorial.pdf
Git_tutorial.pdfGit_tutorial.pdf
Git_tutorial.pdf
 
Git - Intro to the Basics of DVCS
Git - Intro to the Basics of DVCSGit - Intro to the Basics of DVCS
Git - Intro to the Basics of DVCS
 
Git - Intro to the Basics of DVCS
Git - Intro to the Basics of DVCSGit - Intro to the Basics of DVCS
Git - Intro to the Basics of DVCS
 
Git Going With DVCS v1.5.2
Git Going With DVCS v1.5.2Git Going With DVCS v1.5.2
Git Going With DVCS v1.5.2
 
Mini-training: Let’s Git It!
Mini-training: Let’s Git It!Mini-training: Let’s Git It!
Mini-training: Let’s Git It!
 

More from Sven Peters

More from Sven Peters (20)

✊ Join the DEV-olution: A culture of empowered developers
✊ Join the DEV-olution: A culture of empowered developers✊ Join the DEV-olution: A culture of empowered developers
✊ Join the DEV-olution: A culture of empowered developers
 
Team Shaping - Building a shared understanding
Team Shaping - Building a shared understandingTeam Shaping - Building a shared understanding
Team Shaping - Building a shared understanding
 
Developer Joy - How great teams get s%*t done
Developer Joy - How great teams get s%*t doneDeveloper Joy - How great teams get s%*t done
Developer Joy - How great teams get s%*t done
 
Teams Flow, Stay in sync, async
Teams Flow, Stay in sync, asyncTeams Flow, Stay in sync, async
Teams Flow, Stay in sync, async
 
The Hitchhiker's Guide to a Great Developer Career
The Hitchhiker's Guide to a Great Developer CareerThe Hitchhiker's Guide to a Great Developer Career
The Hitchhiker's Guide to a Great Developer Career
 
The Effective Developer - Work Smarter, not Harder
The Effective Developer - Work Smarter, not HarderThe Effective Developer - Work Smarter, not Harder
The Effective Developer - Work Smarter, not Harder
 
How to Become a Conference Speaker
How to Become a Conference SpeakerHow to Become a Conference Speaker
How to Become a Conference Speaker
 
The Effective Developer - Work Smarter, Not Harder
The Effective Developer - Work Smarter, Not HarderThe Effective Developer - Work Smarter, Not Harder
The Effective Developer - Work Smarter, Not Harder
 
5 Things: How to Rock Remote Work
5 Things: How to Rock Remote Work5 Things: How to Rock Remote Work
5 Things: How to Rock Remote Work
 
A Career Advice: Change is the Only Constant
A Career Advice: Change is the Only ConstantA Career Advice: Change is the Only Constant
A Career Advice: Change is the Only Constant
 
Be More Productive with Confluence
Be More Productive with ConfluenceBe More Productive with Confluence
Be More Productive with Confluence
 
Less Process, more Guidance with a Team Playbook
Less Process, more Guidance with a Team PlaybookLess Process, more Guidance with a Team Playbook
Less Process, more Guidance with a Team Playbook
 
The Secret Sauce of Successful Teams
The Secret Sauce of Successful TeamsThe Secret Sauce of Successful Teams
The Secret Sauce of Successful Teams
 
Rise of the Machines - Automate your Development
Rise of the Machines - Automate your DevelopmentRise of the Machines - Automate your Development
Rise of the Machines - Automate your Development
 
Kick-@$$ Sofware Development
Kick-@$$ Sofware DevelopmentKick-@$$ Sofware Development
Kick-@$$ Sofware Development
 
The 5 Hottest Atlassian News from Summit 2014
The 5 Hottest Atlassian News from Summit 2014The 5 Hottest Atlassian News from Summit 2014
The 5 Hottest Atlassian News from Summit 2014
 
Coding Culture
Coding CultureCoding Culture
Coding Culture
 
Atlassian - Software For Every Team
Atlassian - Software For Every TeamAtlassian - Software For Every Team
Atlassian - Software For Every Team
 
It's the culture, but not as you know it
It's the culture, but not as you know itIt's the culture, but not as you know it
It's the culture, but not as you know it
 
Atlassian - The Latest & Greatest April 2014
Atlassian - The Latest & Greatest April 2014Atlassian - The Latest & Greatest April 2014
Atlassian - The Latest & Greatest April 2014
 

Recently uploaded

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
giselly40
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 

Recently uploaded (20)

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
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
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
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
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...
 

Making the switch to DVCS