SlideShare a Scribd company logo
1 of 10
Version Control Softwares
Some Considerations
• Most programs do not have a GUI by default but rather rely on command line directives
• Most of the programs are free and released under various licenses including: Apache, BSD, LGLP. The
details of these licenses are not inconsequential in the final selection but are outside of the scope of
this comparison.
• In general VCSs are bad at merging and difing binary files, therefore, certain file types will not be
capable of taking advantage of everything the softwares have to offer. There are special, dedicated
programs to work with specific binary files. The compared programs can control iterating of bins only.
• A distributed repository model is more flexible from the perspective of the users but is capable of
utilizing a central repository and, considering the application, this should be done in the case that a
distributed repository system is chosen.
• The current system we use (Visual Source Safe) is widely considered to be one of the worst VCSs ever
made and thus any change will be a major improvement with significant and noticeable benefits.
Metrics (1-5)
• Ease of adoption
• Ease of implementation
• Change/Check/Commit Cycle
• Merging and rev comparison
• Supported formats
• Cost
• Support
• Platform compatibility
• Cloud/web integration
• Windows Shell Extension
Contenders
• Subversion (SVN)
• Mercurial
• Team Foundation Server (TFS)
Subversion (SVN)
• Notes
– Repo Model: Client-Server
– License: Apache
– Development: Active
– Maintained by: Apache Software
Foundation
– Can take advantage of MS’s
integrated merging tools for some
binary files.
– Disk space and download/ upload
time is significantly improved over
distributed systems when large
binary files and long changelogs
are present
– Can pay for third party support
– Using “hooks” allows added
functionality including auto-email
• Metrics
– Ease of adoption : 3
– Ease of implementation : 3
– Change/Check/Commit Cycle : 3
– Merging and rev comparison : 4
– Supported formats : 4
– Cost : 5
– Support : 2
– Platform compatibility : 5
– Cloud/web integration : 3
– Windows Shell Extension : Y
• Total: 33
Mercurial
• Notes
– Repo Model: Distributed
– License: GNU GPL
– Development: Active
– Maintained by: Matt Mackall
– Implemented in the BV with
positive results (Amit)
– Users can do P2P sharing
before actually committing
changes to the central repo
– Can pay for third party support
– Using add-ins and extensions
provides added functionality
including auto-email
• Metrics
– Ease of adoption : 4
– Ease of implementation : 2
– Change/Check/Commit Cycle : 5
– Merging and rev comparison : 3
– Supported formats : 3
– Cost : 5
– Support : 2
– Platform compatibility : 5
– Cloud/web integration : 4
– Windows Shell Extension : Y
• Total: 34
Team Foundation Server (TFS)
• Notes
– Repo Model: Client-Server,
Distributed
– License: Proprietary
– Development: Active
– Maintained by: Microsoft
– A small implementation of this is
currently going on within the
engineering group. I am unaware
of the details.
– Best integration with other
Microsoft tools but doesn’t really
work on Macs or Linux.
– All major features require the
installation of additional “Power
Tools”
– Git source control is natively
supported in TFS 2013 and allows
much greater flexibility.
• Metrics
– Ease of adoption : 5
– Ease of implementation : 1
– Change/Check/Commit Cycle : 4.5
– Merging and rev comparison : 3
– Supported formats : 3
– Cost : 1
– Support : 5
– Platform compatibility : 3
– Cloud/web integration : 4
– Windows Shell Extension : Y
• Total: 30.5
Final Tally
• Subversion (SVN): 33
• Mercurial (Hg): 34
• Team Foundation Server (TFS): 30.5
Additional Comments
• There are some interesting third party add-ons that can
be used to fill in for missing features or to enhance
features that are not in the core program.
• Add-ons of Interest:
– Gource: Version tree visualization tool by Google
– Tortoise: A Graphical User Interface for the VCSs
• TFS is a much more comprehensive system, using it for
one of its many features (VCS) would be a waste. As a
system though, it could improve many aspects of the
business. Since this comparison is based solely on the
softwares’ VCS capability, TFS has fallen to the bottom.
My Opinion

More Related Content

What's hot

Datasheet foldermanagementpluginforrd
Datasheet foldermanagementpluginforrdDatasheet foldermanagementpluginforrd
Datasheet foldermanagementpluginforrdMidVision
 
Introduction to Reactive Microservices Architecture.
Introduction to Reactive Microservices Architecture.Introduction to Reactive Microservices Architecture.
Introduction to Reactive Microservices Architecture.Richard Langlois P. Eng.
 
(ATS4-PLAT03) Balancing Security with access for Development
(ATS4-PLAT03) Balancing Security with access for Development(ATS4-PLAT03) Balancing Security with access for Development
(ATS4-PLAT03) Balancing Security with access for DevelopmentBIOVIA
 
Microservice Architecture Patterns, by Richard Langlois P. Eng.
Microservice Architecture Patterns, by Richard Langlois P. Eng.Microservice Architecture Patterns, by Richard Langlois P. Eng.
Microservice Architecture Patterns, by Richard Langlois P. Eng.Richard Langlois P. Eng.
 
Moscow MuleSoft meetup May 2021
Moscow MuleSoft meetup May 2021Moscow MuleSoft meetup May 2021
Moscow MuleSoft meetup May 2021Leadex Systems
 
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 systemsTim Staley
 
Mule management console
Mule management consoleMule management console
Mule management consoleShanky Gupta
 
Maven in mulesoft
Maven in mulesoftMaven in mulesoft
Maven in mulesoftvenkata20k
 
Deploying to and Configuring WebSphere Application Server with UrbanCode Deploy
Deploying to and Configuring WebSphere Application Server with UrbanCode DeployDeploying to and Configuring WebSphere Application Server with UrbanCode Deploy
Deploying to and Configuring WebSphere Application Server with UrbanCode DeployClaudia Ring
 
The Power Boost of Atelier
The Power Boost of AtelierThe Power Boost of Atelier
The Power Boost of AtelierMichelle Stolwyk
 
ClearCase Version Importer - a migration tool to Rational Team Concert SCM
ClearCase Version Importer - a migration tool to Rational Team Concert SCMClearCase Version Importer - a migration tool to Rational Team Concert SCM
ClearCase Version Importer - a migration tool to Rational Team Concert SCMIBM Rational software
 
Product Overview: The New IBM UrbanCode Deploy 6.0
Product Overview: The New IBM UrbanCode Deploy 6.0Product Overview: The New IBM UrbanCode Deploy 6.0
Product Overview: The New IBM UrbanCode Deploy 6.0IBM UrbanCode Products
 
Managing the SharePoint 2010 Application Lifecycle - Part 2
Managing the SharePoint 2010 Application Lifecycle - Part 2Managing the SharePoint 2010 Application Lifecycle - Part 2
Managing the SharePoint 2010 Application Lifecycle - Part 2Chris O'Brien
 
Containerizing MuleSoft applications for hybrid deployment
Containerizing MuleSoft applications for hybrid deployment Containerizing MuleSoft applications for hybrid deployment
Containerizing MuleSoft applications for hybrid deployment JuliaDemidova3
 
Efficient DevOps: Standardizing Chaotic Culture at NBCUniversal
Efficient DevOps:  Standardizing Chaotic Culture at NBCUniversalEfficient DevOps:  Standardizing Chaotic Culture at NBCUniversal
Efficient DevOps: Standardizing Chaotic Culture at NBCUniversalIBM UrbanCode Products
 
Procter & Gamble Modelon INCOSE 2017
Procter & Gamble Modelon INCOSE 2017Procter & Gamble Modelon INCOSE 2017
Procter & Gamble Modelon INCOSE 2017Modelon
 
Version Control With CVS
Version Control With CVSVersion Control With CVS
Version Control With CVSRajesh Kumar
 

What's hot (20)

Datasheet foldermanagementpluginforrd
Datasheet foldermanagementpluginforrdDatasheet foldermanagementpluginforrd
Datasheet foldermanagementpluginforrd
 
Introduction to Reactive Microservices Architecture.
Introduction to Reactive Microservices Architecture.Introduction to Reactive Microservices Architecture.
Introduction to Reactive Microservices Architecture.
 
(ATS4-PLAT03) Balancing Security with access for Development
(ATS4-PLAT03) Balancing Security with access for Development(ATS4-PLAT03) Balancing Security with access for Development
(ATS4-PLAT03) Balancing Security with access for Development
 
Microservice Architecture Patterns, by Richard Langlois P. Eng.
Microservice Architecture Patterns, by Richard Langlois P. Eng.Microservice Architecture Patterns, by Richard Langlois P. Eng.
Microservice Architecture Patterns, by Richard Langlois P. Eng.
 
Moscow MuleSoft meetup May 2021
Moscow MuleSoft meetup May 2021Moscow MuleSoft meetup May 2021
Moscow MuleSoft meetup May 2021
 
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
 
Mule management console
Mule management consoleMule management console
Mule management console
 
Maven in mulesoft
Maven in mulesoftMaven in mulesoft
Maven in mulesoft
 
Deploying to and Configuring WebSphere Application Server with UrbanCode Deploy
Deploying to and Configuring WebSphere Application Server with UrbanCode DeployDeploying to and Configuring WebSphere Application Server with UrbanCode Deploy
Deploying to and Configuring WebSphere Application Server with UrbanCode Deploy
 
The Power Boost of Atelier
The Power Boost of AtelierThe Power Boost of Atelier
The Power Boost of Atelier
 
Sub-programs
Sub-programsSub-programs
Sub-programs
 
Variable Scope
Variable ScopeVariable Scope
Variable Scope
 
Apache maven
Apache mavenApache maven
Apache maven
 
ClearCase Version Importer - a migration tool to Rational Team Concert SCM
ClearCase Version Importer - a migration tool to Rational Team Concert SCMClearCase Version Importer - a migration tool to Rational Team Concert SCM
ClearCase Version Importer - a migration tool to Rational Team Concert SCM
 
Product Overview: The New IBM UrbanCode Deploy 6.0
Product Overview: The New IBM UrbanCode Deploy 6.0Product Overview: The New IBM UrbanCode Deploy 6.0
Product Overview: The New IBM UrbanCode Deploy 6.0
 
Managing the SharePoint 2010 Application Lifecycle - Part 2
Managing the SharePoint 2010 Application Lifecycle - Part 2Managing the SharePoint 2010 Application Lifecycle - Part 2
Managing the SharePoint 2010 Application Lifecycle - Part 2
 
Containerizing MuleSoft applications for hybrid deployment
Containerizing MuleSoft applications for hybrid deployment Containerizing MuleSoft applications for hybrid deployment
Containerizing MuleSoft applications for hybrid deployment
 
Efficient DevOps: Standardizing Chaotic Culture at NBCUniversal
Efficient DevOps:  Standardizing Chaotic Culture at NBCUniversalEfficient DevOps:  Standardizing Chaotic Culture at NBCUniversal
Efficient DevOps: Standardizing Chaotic Culture at NBCUniversal
 
Procter & Gamble Modelon INCOSE 2017
Procter & Gamble Modelon INCOSE 2017Procter & Gamble Modelon INCOSE 2017
Procter & Gamble Modelon INCOSE 2017
 
Version Control With CVS
Version Control With CVSVersion Control With CVS
Version Control With CVS
 

Similar to Version control softwares

Making software development processes to work for you
Making software development processes to work for youMaking software development processes to work for you
Making software development processes to work for youAmbientia
 
SQL Server DevOps Jumpstart
SQL Server DevOps JumpstartSQL Server DevOps Jumpstart
SQL Server DevOps JumpstartOri Donner
 
Continuous Integration
Continuous IntegrationContinuous Integration
Continuous IntegrationXPDays
 
DevOps and Build Automation
DevOps and Build AutomationDevOps and Build Automation
DevOps and Build AutomationHeiswayi Nrird
 
DevOps Service | Mindtree
DevOps Service | MindtreeDevOps Service | Mindtree
DevOps Service | MindtreeAnikeyRoy
 
#ESPC19 How to do #DevOps with #SPFx
#ESPC19 How to do #DevOps with #SPFx#ESPC19 How to do #DevOps with #SPFx
#ESPC19 How to do #DevOps with #SPFxVincent Biret
 
Scaling Git for Enterprise DevOps
Scaling Git for Enterprise DevOpsScaling Git for Enterprise DevOps
Scaling Git for Enterprise DevOpsEng Teong Cheah
 
What’s new in Rational collaborative lifecycle management 2011?
What’s new in Rational collaborative lifecycle management 2011?What’s new in Rational collaborative lifecycle management 2011?
What’s new in Rational collaborative lifecycle management 2011?IBM Danmark
 
V mware thin app 4.5 what_s new presentation
V mware thin app 4.5 what_s new presentationV mware thin app 4.5 what_s new presentation
V mware thin app 4.5 what_s new presentationsolarisyourep
 
Application Virtualization overview - BayCUG
Application Virtualization overview - BayCUGApplication Virtualization overview - BayCUG
Application Virtualization overview - BayCUGDenis Gundarev
 
victoriia basarab - special aspects of dev ops platform development
victoriia basarab - special aspects of dev ops platform developmentvictoriia basarab - special aspects of dev ops platform development
victoriia basarab - special aspects of dev ops platform developmentDariia Seimova
 
VSTS Migration Briefing
VSTS Migration BriefingVSTS Migration Briefing
VSTS Migration BriefingAngela Dugan
 
Forrester Research on Globally Distributed Development Using Subversion
Forrester Research on Globally Distributed Development Using SubversionForrester Research on Globally Distributed Development Using Subversion
Forrester Research on Globally Distributed Development Using SubversionWANdisco Plc
 
Forrester Research on Optimizing Globally Distributed Software Development Us...
Forrester Research on Optimizing Globally Distributed Software Development Us...Forrester Research on Optimizing Globally Distributed Software Development Us...
Forrester Research on Optimizing Globally Distributed Software Development Us...WANdisco Plc
 
Session on evaluation of DevSecOps
Session on evaluation of DevSecOpsSession on evaluation of DevSecOps
Session on evaluation of DevSecOpsAbdullah al Mamun
 
Aiming for automatic updates - Drupal Dev Days Lisbon 2018
Aiming for automatic updates - Drupal Dev Days Lisbon 2018Aiming for automatic updates - Drupal Dev Days Lisbon 2018
Aiming for automatic updates - Drupal Dev Days Lisbon 2018hernanibf
 
Engineering Software Products: 10. Devops and code management
Engineering Software Products: 10. Devops and code managementEngineering Software Products: 10. Devops and code management
Engineering Software Products: 10. Devops and code managementsoftware-engineering-book
 

Similar to Version control softwares (20)

Making software development processes to work for you
Making software development processes to work for youMaking software development processes to work for you
Making software development processes to work for you
 
SQL Server DevOps Jumpstart
SQL Server DevOps JumpstartSQL Server DevOps Jumpstart
SQL Server DevOps Jumpstart
 
Git and GitHub.pptx
Git and GitHub.pptxGit and GitHub.pptx
Git and GitHub.pptx
 
Continuous Integration
Continuous IntegrationContinuous Integration
Continuous Integration
 
DevOps and Build Automation
DevOps and Build AutomationDevOps and Build Automation
DevOps and Build Automation
 
DevOps Service | Mindtree
DevOps Service | MindtreeDevOps Service | Mindtree
DevOps Service | Mindtree
 
#ESPC19 How to do #DevOps with #SPFx
#ESPC19 How to do #DevOps with #SPFx#ESPC19 How to do #DevOps with #SPFx
#ESPC19 How to do #DevOps with #SPFx
 
Scaling Git for Enterprise DevOps
Scaling Git for Enterprise DevOpsScaling Git for Enterprise DevOps
Scaling Git for Enterprise DevOps
 
What’s new in Rational collaborative lifecycle management 2011?
What’s new in Rational collaborative lifecycle management 2011?What’s new in Rational collaborative lifecycle management 2011?
What’s new in Rational collaborative lifecycle management 2011?
 
Shillum "Building for the Future: Interoperability"
Shillum "Building for the Future: Interoperability"Shillum "Building for the Future: Interoperability"
Shillum "Building for the Future: Interoperability"
 
V mware thin app 4.5 what_s new presentation
V mware thin app 4.5 what_s new presentationV mware thin app 4.5 what_s new presentation
V mware thin app 4.5 what_s new presentation
 
Application Virtualization overview - BayCUG
Application Virtualization overview - BayCUGApplication Virtualization overview - BayCUG
Application Virtualization overview - BayCUG
 
victoriia basarab - special aspects of dev ops platform development
victoriia basarab - special aspects of dev ops platform developmentvictoriia basarab - special aspects of dev ops platform development
victoriia basarab - special aspects of dev ops platform development
 
VSTS Migration Briefing
VSTS Migration BriefingVSTS Migration Briefing
VSTS Migration Briefing
 
DevOps Presentation.pptx
DevOps Presentation.pptxDevOps Presentation.pptx
DevOps Presentation.pptx
 
Forrester Research on Globally Distributed Development Using Subversion
Forrester Research on Globally Distributed Development Using SubversionForrester Research on Globally Distributed Development Using Subversion
Forrester Research on Globally Distributed Development Using Subversion
 
Forrester Research on Optimizing Globally Distributed Software Development Us...
Forrester Research on Optimizing Globally Distributed Software Development Us...Forrester Research on Optimizing Globally Distributed Software Development Us...
Forrester Research on Optimizing Globally Distributed Software Development Us...
 
Session on evaluation of DevSecOps
Session on evaluation of DevSecOpsSession on evaluation of DevSecOps
Session on evaluation of DevSecOps
 
Aiming for automatic updates - Drupal Dev Days Lisbon 2018
Aiming for automatic updates - Drupal Dev Days Lisbon 2018Aiming for automatic updates - Drupal Dev Days Lisbon 2018
Aiming for automatic updates - Drupal Dev Days Lisbon 2018
 
Engineering Software Products: 10. Devops and code management
Engineering Software Products: 10. Devops and code managementEngineering Software Products: 10. Devops and code management
Engineering Software Products: 10. Devops and code management
 

Version control softwares

  • 2. Some Considerations • Most programs do not have a GUI by default but rather rely on command line directives • Most of the programs are free and released under various licenses including: Apache, BSD, LGLP. The details of these licenses are not inconsequential in the final selection but are outside of the scope of this comparison. • In general VCSs are bad at merging and difing binary files, therefore, certain file types will not be capable of taking advantage of everything the softwares have to offer. There are special, dedicated programs to work with specific binary files. The compared programs can control iterating of bins only. • A distributed repository model is more flexible from the perspective of the users but is capable of utilizing a central repository and, considering the application, this should be done in the case that a distributed repository system is chosen. • The current system we use (Visual Source Safe) is widely considered to be one of the worst VCSs ever made and thus any change will be a major improvement with significant and noticeable benefits.
  • 3. Metrics (1-5) • Ease of adoption • Ease of implementation • Change/Check/Commit Cycle • Merging and rev comparison • Supported formats • Cost • Support • Platform compatibility • Cloud/web integration • Windows Shell Extension
  • 4. Contenders • Subversion (SVN) • Mercurial • Team Foundation Server (TFS)
  • 5. Subversion (SVN) • Notes – Repo Model: Client-Server – License: Apache – Development: Active – Maintained by: Apache Software Foundation – Can take advantage of MS’s integrated merging tools for some binary files. – Disk space and download/ upload time is significantly improved over distributed systems when large binary files and long changelogs are present – Can pay for third party support – Using “hooks” allows added functionality including auto-email • Metrics – Ease of adoption : 3 – Ease of implementation : 3 – Change/Check/Commit Cycle : 3 – Merging and rev comparison : 4 – Supported formats : 4 – Cost : 5 – Support : 2 – Platform compatibility : 5 – Cloud/web integration : 3 – Windows Shell Extension : Y • Total: 33
  • 6. Mercurial • Notes – Repo Model: Distributed – License: GNU GPL – Development: Active – Maintained by: Matt Mackall – Implemented in the BV with positive results (Amit) – Users can do P2P sharing before actually committing changes to the central repo – Can pay for third party support – Using add-ins and extensions provides added functionality including auto-email • Metrics – Ease of adoption : 4 – Ease of implementation : 2 – Change/Check/Commit Cycle : 5 – Merging and rev comparison : 3 – Supported formats : 3 – Cost : 5 – Support : 2 – Platform compatibility : 5 – Cloud/web integration : 4 – Windows Shell Extension : Y • Total: 34
  • 7. Team Foundation Server (TFS) • Notes – Repo Model: Client-Server, Distributed – License: Proprietary – Development: Active – Maintained by: Microsoft – A small implementation of this is currently going on within the engineering group. I am unaware of the details. – Best integration with other Microsoft tools but doesn’t really work on Macs or Linux. – All major features require the installation of additional “Power Tools” – Git source control is natively supported in TFS 2013 and allows much greater flexibility. • Metrics – Ease of adoption : 5 – Ease of implementation : 1 – Change/Check/Commit Cycle : 4.5 – Merging and rev comparison : 3 – Supported formats : 3 – Cost : 1 – Support : 5 – Platform compatibility : 3 – Cloud/web integration : 4 – Windows Shell Extension : Y • Total: 30.5
  • 8. Final Tally • Subversion (SVN): 33 • Mercurial (Hg): 34 • Team Foundation Server (TFS): 30.5
  • 9. Additional Comments • There are some interesting third party add-ons that can be used to fill in for missing features or to enhance features that are not in the core program. • Add-ons of Interest: – Gource: Version tree visualization tool by Google – Tortoise: A Graphical User Interface for the VCSs • TFS is a much more comprehensive system, using it for one of its many features (VCS) would be a waste. As a system though, it could improve many aspects of the business. Since this comparison is based solely on the softwares’ VCS capability, TFS has fallen to the bottom.