In this article we will explore the topic of List of version-control software from different angles. We will analyze its impact on current society, as well as its historical relevance. We will also examine the different perspectives that exist around List of version-control software, from expert opinions to personal experiences. Through this analysis, we will seek to offer a comprehensive view of List of version-control software and its influence on various aspects of daily life. Additionally, we will explore possible solutions or approaches to address the challenges related to List of version-control software. We hope that this article will be of interest to those seeking to deepen their knowledge about List of version-control software and its implications in contemporary society.
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 the fastest access to the trunk tip compared to SCCS and an improved user interface, 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.
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
Vesta – (discontinued) 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.
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 – (discontinued) 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
Mercurial – written in Python as an open source replacement to BitKeeper; decentralized and aims to be fast, lightweight, portable, and easy to use
Proprietary
Code Co-op – (discontinued) peer-to-peer version control system (can use e-mail for synchronization)
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.
^Bill Wohler (10 Oct 1992). "Unix – Frequently Asked Questions (7/7)". RCS vs SCCS: How do they compare for performance?. is much faster in retrieving the latest version
Years, where available, indicate the date of first stable release. Systems with names in italics are no longer maintained or have planned end-of-life dates.