Jump to content

List of version-control software: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
Line 32: Line 32:
* [[QVCS|Quma Version Control System]]
* [[QVCS|Quma Version Control System]]
* [[Sourceanywhere|SourceAnywhere]] – version control tool by Dynamsoft.
* [[Sourceanywhere|SourceAnywhere]] – version control tool by Dynamsoft.
* [[StarTeam]] – coordinates and manages software delivery process by [[Borland]]; centralized control of digital assets and activities
* [[StarTeam]] – coordinates and manages software delivery process by [[Microfocus]], formerly [[Borland]]; centralized control of digital assets and activities
* [[Telelogic Synergy]] – SCC compliant integrated change management and task-based configuration management system, proprietary of IBM.
* [[Telelogic Synergy]] – SCC compliant integrated change management and task-based configuration management system, proprietary of IBM.
* [[Vault (revision control system)|Vault]] – version control tool by SourceGear (First installation can be used for free)
* [[Vault (revision control system)|Vault]] – version control tool by SourceGear (First installation can be used for free)

Revision as of 15:15, 13 October 2011

This is a list of notable software for revision control.


Historical local only

In the local-only approach, all developers must use the same computer system. These software often manage single files individually and are largely replaced or embedded within newer software.

Free

  • 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 speed and is thus more useful in environments that rely heavily on branching and merging with multiple "current" and identical versions.

Client-server model

In the client-server model, developers use a shared single 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 — CVS clone under the BSD license, with emphasis put on 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

Distributed model

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

Open source

  • Aegis — written by Peter Miller, mature software, filesystem-oriented, limited network support. It has support for distributed revision control.
  • ArX — written by Walter Landry, started as a fork of GNU arch, but has been completely rewritten
  • Bazaar — written in Python, originally by Martin Pool and sponsored by Canonical; decentralised, and aims to be fast and easy to use; can losslessly import Arch archives
  • Codeville — written in Python originally by Ross Cohen; uses an innovative merging algorithm
  • Darcs — written in Haskell and originally developed by David Roundy; can keep track of inter-patch dependencies and automatically rearrange and "cherry-pick" them using a "theory of patches"
  • DCVS — decentralized and CVS-based
  • Fossil — written by D. Richard Hipp for SQLite; distributed revision control, wiki, and bug-tracking
  • Git — written in a collection of Perl, C, and various shell scripts, designed by Linus Torvalds based on the needs of the Linux kernel project; decentralized, and aims to be fast, flexible, and robust
  • GNU arch
  • LibreSource — configuration management
  • Mercurial — written in Python as an Open Source replacement to BitKeeper; decentralized and aims to be fast, lightweight, portable, and easy to use
  • Monotone — developed by the Monotone Team; decentralized in a peer-to-peer way
  • SVK — written in Perl by Kao Chia-liang; built on top of Subversion to allow distributed commits

Proprietary

Notes

  1. ^ Bill Wohler (10 Oct 1992). "Unix - Frequently Asked Questions (7/7)". [RCS ...] is much faster in retrieving the latest version {{cite web}}: |contribution= ignored (help)
  2. ^ Larry McVoy (11 Dec 2003). "BitKeeper: Why SCCS, rather than RCS?". 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 ...] is more intuitive and consistent {{cite web}}: |contribution= ignored (help)
  4. ^ "Changes", SVN, Collab Net.

See also

Other comparisons

Further reading