Software:List of version-control software

From HandWiki
Short description: none

This is a list of notable software for version control.

Local Data Model

In the local-only approach, all developers must use the same file system.

Open Source

  • Revision Control System (RCS) – stores the latest version and backward deltas for fastest access to the trunk tip[1][2] compared to SCCS and an improved user interface,[3] at the cost of slow branch tip access and missing support for included/excluded deltas.
  • Source Code Control System (SCCS) – part of UNIX; based on interleaved deltas, can construct versions as arbitrary sets of revisions. Extracting an arbitrary version takes essentially the same time and is thus more useful in environments that rely heavily on branching and merging with multiple "current" and identical versions.

Proprietary

  • The Librarian – Around since 1969, source control for IBM mainframe computers; from Applied Data Research, later acquired by Computer Associates
  • Panvalet – Around since the 1970s, source and object control for IBM mainframe computers.

Client–server model

In the client–server model, developers use one shared repository.

Open source

  • Concurrent Versions System (CVS) – originally built on RCS, licensed under the GPL.
    • CVSNT – cross-platform port of CVS that allows case insensitive file names among other changes
    • OpenCVS – unreleased CVS clone under a BSD license, emphasising security and source code correctness
  • Subversion (SVN) – versioning control system inspired by CVS[4]
  • Vesta – build system with a versioning file system and support for distributed repositories

Proprietary

  • AccuRev – source configuration management tool with integrated issue tracking based on "Streams" that efficiently manages parallel and global development; replication server is also available. Now owned by Micro Focus.
  • Autodesk Vault – Version control tool specifically designed for Autodesk applications managing the complex relationships between design files such as AutoCAD and Autodesk Inventor.
  • CADES – Designer productivity and version control system by International Computers Limited.
  • Dimensions CM – software change and configuration management system developed by Micro Focus, formerly Serena Software, that includes revision control.
  • Helix Core, formerly Perforce Helix – for large scale development environments
  • IBM Configuration Management Version Control (CMVC) – version control system, no longer available.
  • IBM Rational ClearCase – MSSCCI compliant (Source Control Plug-in API) configuration management system by IBM Rational Software
  • IBM Rational Synergy – MSSCCI compliant (Source Control Plug-in API) integrated change management and task-based configuration management system, proprietary of IBM.
  • IBM Rational Team Concert – Collaboration and application lifecycle management platform by IBM Rational Software
  • IC Manage Global Design Platform (GDP) – design data management for IC design and Perforce infrastructure support.
  • PTC Integrity, formerly MKS Integrity.
  • PVCS – originally Polytron Version Control System, developed by Don Kinzer at Polytron, first released in 1985. Now owned by Micro Focus.
  • Razor (configuration management), integrated suite from Visible Systems
  • StarTeam – coordinates and manages software delivery process by Micro Focus, formerly Borland; centralized control of digital assets and activities
  • Surround SCM – version control tool by Seapine Software.
  • Team Foundation Version Control – version control system developed by Microsoft for Team Foundation Server, now Azure DevOps Server
  • Vault – version control tool by SourceGear (First installation can be used for free)
  • Visual SourceSafe – version control tool by Microsoft; oriented toward small teams

Distributed model

In the distributed approach, each developer works directly with their own local repository, and changes are shared between repositories as a separate step.

Open source

  • BitKeeper – was used in Linux kernel development (2002 – April 2005) until its license was revoked for breach of contract; was open-sourced in 2016 in attempt to broaden its appeal again.
  • Darcs – written in Haskell, originally developed by David Roundy; can track inter-patch dependencies and automatically rearrange and cherry-pick them using a theory of patches
  • Fossil – written by D. Richard Hipp for SQLite; distributed revision control, wiki, bug-tracking, and forum (all-in-one solution) with console and web interfaces. Single portable executable and single repository file.
  • Git – written in a collection of Perl, C, and various shell scripts, designed by Linus Torvalds based on needs of the Linux kernel project; decentralized: goals: fast, flexible, and robust [5]
  • Mercurial – written in Python as an open source replacement to BitKeeper; decentralized and aims to be fast, lightweight, portable, and easy to use
  • Pijul (https://pijul.org/) – Free and open source (GPL 2) distributed version control system based on a theory of patches and written in Rust

Proprietary

  • Code Co-op – peer-to-peer version control system (can use e-mail for synchronization)
  • Plastic SCM (rebranded as Unity Version Control) – by Codice Software, Inc and Unity Technologies[6][7]

Discontinued

These systems have been either officially discontinued or not shipped a release in more than a decade.

  • Bazaar – Open-source DVCS written in Python, originally by Martin Pool and sponsored by Canonical; decentralised: goals: fast and easy to use; can losslessly import Arch archives; replaced by friendly fork named Breezy.
  • GNU arch - A very early open-source DVCS. Has been deprecated since 2009 in favor of Bazaar, which was in turn replaced by Breezy.
  • DCVS – A decentralized spin on CVS, last released 2006 and since discontinued.
  • Monotone – Open-source DVCS, not updated since 2011.
  • Quma Version Control System – Open-source VCS, final release 2010, abandoned 2013.
  • Sun WorkShop TeamWare – Designed[citation needed] by Larry McVoy, creator of BitKeeper.

See also

References

  1. Bill Wohler (10 Oct 1992). "Unix – Frequently Asked Questions (7/7)". RCS vs SCCS: How do they compare for performance?. http://www.faqs.org/faqs/unix-faq/faq/part7/. "[RCS ...] is much faster in retrieving the latest version" 
  2. Larry McVoy (11 Dec 2003). "BitKeeper: Why SCCS, rather than RCS?". http://mail.bitmover.com/pipermail/bitkeeper-users/2003-December/001137.html. "RCS is optimized for getting the most recent version on the trunk" 
  3. Bill Wohler (10 Oct 1992). "Unix – Frequently Asked Questions (7/7)". RCS vs SCCS: How do the interfaces compare?. http://www.faqs.org/faqs/unix-faq/faq/part7/. "[RCS ...] is more intuitive and consistent" 
  4. "Changes", SVN, Collab Net, http://svn.collab.net/repos/svn/trunk/CHANGES 
  5. "Git - A Short History of Git". https://git-scm.com/book/en/v2/Getting-Started-A-Short-History-of-Git. 
  6. "Plastic SCM - The Distributed Version Control for Big Projects". https://www.plasticscm.com/. 
  7. Technologies, Unity. "Scalable DevOps Services & Solutions | Unity" (in en). https://unity.com/products/unity-devops. 

External links