SlideShare uma empresa Scribd logo
1 de 21
Baixar para ler offline
Progressive
          Revision Control
                               A Comprehensive
                                 introduction to
                                           DVCS



Presented by Ivan Yatskevich
Minsk, 2009
Overview

1.   A short history of revision control
2.   Definition of DVCS
3.   Real world DVCS usage (practice)
4.   Download and installation
5.   Tools and integration
6.   Conclusions
History

 1972 SCCS
1980's RCS, CVS
1990's TeamWare, BitKeeper
 2000 Subversion
 2005 Git, Mercurial
Definition




      Distributed
Version Control System
Definition




             ?
Definition




             !
Definition




     Decentralized
Version Control System
Definition

   Alice's                  Bob's
   working                  working
   copy                 ?   copy
        .svn.svn .svn           .svn.svn .svn
        .svn .svn               .svn .svn
        .svn   .svn             .svn   .svn
        .svn                    .svn


                                       ?


   Central                  Cindy's
   repository               working
                            copy
                                .svn.svn .svn

      svn                       .svn .svn
                                .svn
                                .svn
                                       .svn
Definition

   Alice's         Bob's
   repository      repository
   and             and
   working         working
   copy            copy
             .hg             .hg




   Central         Cindy's
   repository      repository
                   and
                   working
                   copy
            .hg              .hg
Basic concepts


               38d2da7b7a7b   3850688da582


                    1              3
c0bda9cb5ce8


     0
               294f1e8244b1   294f1e8244b1   0d5495eb5994


                    2              4            tip
Basic concepts




      Practice is
       the King
Basic concepts

Key points to remember:
  ● revisions, branches, merges, heads, ti p
  ● local and global revision ids

  ● no network connection is required for

  most operations
  ● pull-merge-commit cycle
Basic concepts

Most used commands:
hg commit     create new revision
hg update     update working copy to specified revision
 hg merge     merge two branches
    hg pull   get changes from remote repo
   hg push    upload changes to remote repo
  hg revert   restore the state and content to specific
              revision
Goodies

Useful features:
  hg serve   light-weight built-in server
 hg bisect   find bugs using binary search
  hg fetch   pull+merge+update
hg convert   convert to hg from CVS, SVN, git and more

Extensions
Download and
   installation

Windows/MacOS X/Sources
http://mercurial.selenic.com/downloads/
Gentoo
$ emerge mercurial
Debian/Ubuntu
$ apt-get install mercurial
Fedora
$ yum install mercurial
Tools

All platforms
  Command line interface

  Ecli pse plug-ins

  IntelliJ IDEA plug-ins


Windows
  TortoiseHG


More tools
  http://mercurial.selenic.com/wiki/OtherTools
Integration
Conclusions
Resources

Official Mercurial Wiki
http://mercurial.selenic.com/wiki

Mercurial: The Definitive Guide
http://hgbook.red-bean.com

Version Control with Subversion
http://svnbook.red-bean.com/

InfoQ: Distributed Version Control Systems: A
Not-So-Quick Guide Through
http://www.infoq.com/articles/dvcs-guide

Wiki pedia
http://www.wiki pedia.org
Contacts

E-mail:
ivan.yatskevich@gmail.com
Twitter:
@yatskevich
The End




  Any
Questions?

Mais conteúdo relacionado

Semelhante a Progressive Revision Control: A Comprehensive Introduction to DVCS

Git basic stanley hsiao 2010_12_15
Git basic stanley hsiao 2010_12_15Git basic stanley hsiao 2010_12_15
Git basic stanley hsiao 2010_12_15Chen-Han Hsiao
 
Enjoy privacy on Gitlab
Enjoy privacy on GitlabEnjoy privacy on Gitlab
Enjoy privacy on GitlabMaxis Kao
 
Gitlab and Lingvokot
Gitlab and LingvokotGitlab and Lingvokot
Gitlab and LingvokotLingvokot
 
Groovy there's a docker in my application pipeline
Groovy there's a docker in my application pipelineGroovy there's a docker in my application pipeline
Groovy there's a docker in my application pipelineKris Buytaert
 
OSMC 2017 | Groovy There is a Docker in my Dashing Pipeline by Kris Buytaert
OSMC 2017 | Groovy There is a Docker in my Dashing Pipeline by Kris Buytaert OSMC 2017 | Groovy There is a Docker in my Dashing Pipeline by Kris Buytaert
OSMC 2017 | Groovy There is a Docker in my Dashing Pipeline by Kris Buytaert NETWAYS
 
Drupal Deployment
Drupal DeploymentDrupal Deployment
Drupal DeploymentJeff Eaton
 
Git Started With Git
Git Started With GitGit Started With Git
Git Started With GitNick Quaranto
 
Getting started with GIT
Getting started with GITGetting started with GIT
Getting started with GITpratz0909
 

Semelhante a Progressive Revision Control: A Comprehensive Introduction to DVCS (20)

Git
GitGit
Git
 
Git Going with DVCS v1.6.0
Git Going with DVCS v1.6.0Git Going with DVCS v1.6.0
Git Going with DVCS v1.6.0
 
Git basic stanley hsiao 2010_12_15
Git basic stanley hsiao 2010_12_15Git basic stanley hsiao 2010_12_15
Git basic stanley hsiao 2010_12_15
 
Using Hg
Using HgUsing Hg
Using Hg
 
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
 
Git
GitGit
Git
 
Session git
Session gitSession git
Session git
 
Enjoy privacy on Gitlab
Enjoy privacy on GitlabEnjoy privacy on Gitlab
Enjoy privacy on Gitlab
 
Continuos Integration @Knetminer
Continuos Integration @KnetminerContinuos Integration @Knetminer
Continuos Integration @Knetminer
 
Gitlab and Lingvokot
Gitlab and LingvokotGitlab and Lingvokot
Gitlab and Lingvokot
 
M.Mozūras - git
M.Mozūras - gitM.Mozūras - git
M.Mozūras - git
 
Groovy there's a docker in my application pipeline
Groovy there's a docker in my application pipelineGroovy there's a docker in my application pipeline
Groovy there's a docker in my application pipeline
 
OSMC 2017 | Groovy There is a Docker in my Dashing Pipeline by Kris Buytaert
OSMC 2017 | Groovy There is a Docker in my Dashing Pipeline by Kris Buytaert OSMC 2017 | Groovy There is a Docker in my Dashing Pipeline by Kris Buytaert
OSMC 2017 | Groovy There is a Docker in my Dashing Pipeline by Kris Buytaert
 
Drupal Deployment
Drupal DeploymentDrupal Deployment
Drupal Deployment
 
Subversion to Git Migration
Subversion to Git MigrationSubversion to Git Migration
Subversion to Git Migration
 
Git Started With Git
Git Started With GitGit Started With Git
Git Started With Git
 
Git 101
Git 101Git 101
Git 101
 
3 Git
3 Git3 Git
3 Git
 
Introduction To Git
Introduction To GitIntroduction To Git
Introduction To Git
 
Getting started with GIT
Getting started with GITGetting started with GIT
Getting started with GIT
 

Último

[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality AssuranceInflectra
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
Manual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance AuditManual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance AuditSkynet Technologies
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterMydbops
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfpanagenda
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch TuesdayIvanti
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesThousandEyes
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfIngrid Airi González
 
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...panagenda
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Mark Goldstein
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Farhan Tariq
 

Último (20)

[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
Manual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance AuditManual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance Audit
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL Router
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch Tuesday
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
 
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...
 

Progressive Revision Control: A Comprehensive Introduction to DVCS

  • 1. Progressive Revision Control A Comprehensive introduction to DVCS Presented by Ivan Yatskevich Minsk, 2009
  • 2. Overview 1. A short history of revision control 2. Definition of DVCS 3. Real world DVCS usage (practice) 4. Download and installation 5. Tools and integration 6. Conclusions
  • 3. History 1972 SCCS 1980's RCS, CVS 1990's TeamWare, BitKeeper 2000 Subversion 2005 Git, Mercurial
  • 4. Definition Distributed Version Control System
  • 7. Definition Decentralized Version Control System
  • 8. Definition Alice's Bob's working working copy ? copy .svn.svn .svn .svn.svn .svn .svn .svn .svn .svn .svn .svn .svn .svn .svn .svn ? Central Cindy's repository working copy .svn.svn .svn svn .svn .svn .svn .svn .svn
  • 9. Definition Alice's Bob's repository repository and and working working copy copy .hg .hg Central Cindy's repository repository and working copy .hg .hg
  • 10. Basic concepts 38d2da7b7a7b 3850688da582 1 3 c0bda9cb5ce8 0 294f1e8244b1 294f1e8244b1 0d5495eb5994 2 4 tip
  • 11. Basic concepts Practice is the King
  • 12. Basic concepts Key points to remember: ● revisions, branches, merges, heads, ti p ● local and global revision ids ● no network connection is required for most operations ● pull-merge-commit cycle
  • 13. Basic concepts Most used commands: hg commit create new revision hg update update working copy to specified revision hg merge merge two branches hg pull get changes from remote repo hg push upload changes to remote repo hg revert restore the state and content to specific revision
  • 14. Goodies Useful features: hg serve light-weight built-in server hg bisect find bugs using binary search hg fetch pull+merge+update hg convert convert to hg from CVS, SVN, git and more Extensions
  • 15. Download and installation Windows/MacOS X/Sources http://mercurial.selenic.com/downloads/ Gentoo $ emerge mercurial Debian/Ubuntu $ apt-get install mercurial Fedora $ yum install mercurial
  • 16. Tools All platforms Command line interface Ecli pse plug-ins IntelliJ IDEA plug-ins Windows TortoiseHG More tools http://mercurial.selenic.com/wiki/OtherTools
  • 19. Resources Official Mercurial Wiki http://mercurial.selenic.com/wiki Mercurial: The Definitive Guide http://hgbook.red-bean.com Version Control with Subversion http://svnbook.red-bean.com/ InfoQ: Distributed Version Control Systems: A Not-So-Quick Guide Through http://www.infoq.com/articles/dvcs-guide Wiki pedia http://www.wiki pedia.org
  • 21. The End Any Questions?