Comparison of version-control software


The following is a comparison of version-control software. The following tables include general and technical information on notable version control and software configuration management software. For SCM software not suitable for source code, see Comparison of open-source configuration-management software.

General information

Table explanation
SoftwareMaintainerDevelopment statusRepository modelConcurrency modelLicensePlatforms supportedCost
AccuRev SCMMicro Focus InternationalClient–serverMerge or lockMost Java Platforms
Azure DevOpsMicrosoftClient–server, DistributedMerge or lockWindows, cross-platform via Azure DevOps Services
GNU BazaarCanonical Ltd.; last release from 2016Distributed and Client–serverMergeUnix-like, Windows, macOS
BitKeeperBitMover Inc.DistributedMergeUnix-like, Windows, macOS
ClearCaseIBM RationalClient–serverMerge or lockLinux, Windows, AIX, Solaris, HP UX, i5/OS, OS/390, z/OS,
Code Co-opReliable SoftwareDistributedMergeWindows
CodevilleRoss Cohenofficial site offline; latest release Distributedprecise codeville mergeUnix-like, Windows, macOS
CVSThe CVS Teammaintained but new features not added; last release from 2008Client–serverMergeUnix-like, Windows, macOS
CVSNTMarch Hare Software and community membersmaintained and new features under developmentClient–serverMerge or lockUnix-like, Windows, macOS, i5/OS
darcsThe Darcs teamDistributedMergeUnix-like, Windows, macOS
DatThe Dat teamDistributedMergeUnix-like, Windows, macOS
Dimensions CMSerena SoftwareClient–serverMerge or lockWindows, Linux, Solaris, AIX, HP UX, z/OS
EndevorCA TechnologiesClient-serverMerge or Lockz/OS
FossilD. Richard HippDistributedMergePOSIX, Windows, macOS, Other
GitJunio HamanoDistributedMergePOSIX, Windows, macOS
GNU archAndy TaiunmaintainedDistributedMergeUnix-like, Windows, macOS
IC ManageIC Manage Inc.Client–serverMerge or lockUnix-like, Windows, macOS
PTC IntegrityPTCClient–serverMerge or lockUnix-like, Windows
MercurialMatt MackallDistributedMergeUnix-like, Windows, macOS
MonotoneNathaniel Smith, Graydon HoareDistributedMergeUnix-like, Windows, macOS
Perforce Helix CorePerforce Software Inc.Client–server and DistributedMerge or lockUnix-like, Windows, macOS
Plastic SCMCodice SoftwareClient–server and Distributed control systemDistributedMerge or lockLinux, Windows, macOS
PVCSSerena SoftwareClient–serverLockWindows, Unix-like
Rational Team ConcertIBM RationalClient–serverMerge or lockLinux, Windows, AIX, Solaris, HP UX, i5/OS, OS/390, z/OS, macOS
Revision Control SystemThien-Thi NguyenlocalMerge or lockUnix-like
SCM AnywhereDynamsoft CorporationClient–serverMerge or LockUnix-like, Windows, macOS
Source Code Control System Jörg SchillinglocallockUnix-like, macOS CDDL-licensed versions exist and SCCS has also traditionally been bundled in commercial UNIX distributions
StarTeamBorland Client–serverMerge or lockWindows and Cross-platform via Java based client
Subversion Apache Software FoundationClient–serverMerge or lockUnix-like, Windows, macOS
Surround SCMPerforce Software Inc.Client–serverMerge or lockLinux, Windows, macOS
SynergyIBM RationalClient–server and DistributedMerge or lockLinux, Windows, Unix-like
VaultSourceGear LLCClient–serverMerge or lockUnix-like, Linux, Windows
VestaKenneth Schalk; Tim Mann,web site not updated since 2006; latest release Distributed NFS-protocol-emulation choice to optionally confederate clients and/or serverslock on branch; merge branch-to-branchTru64, Linux
Visual SourceSafe Microsoftserious bug fixes onlyShared FolderMerge or lockWindows
SoftwareMaintainerDevelopment statusRepository modelConcurrency modelLicensePlatforms supportedCost

Technical information

Table explanation
SoftwareProgramming languageStorage methodScope of changeRevision IDsNetwork protocolsSource code size
AccuRev SCMC++, JavaChangesetFileNumber pair NN/NNcustom
Azure DevOpsC++ and C#ChangesetFile and TreeNumbersSOAP over HTTP or HTTPS, Ssh
GNU BazaarPython 2, Pyrex, CSnapshotTreePseudorandomcustom, custom over ssh, custom over HTTP, HTTP, SFTP, FTP, email bundles, WebDAV 4.1 MB
BitKeeperCChangesetTreeChangeset keys, numberscustom, HTTP, rsh, ssh, email99 MB
CA Software Change ManagerC, C++, Java, HTMLChangeset and SnapshotFile and TreeNumbersHTTP, TCP/IP
ClearCaseC, Java, PerlChangesetFile and TreeNumberscustom, custom, HTTP
Code Co-opC++ChangesetUser ID-Ordinale-mail, LAN
CodevillePython
CVSCChangesetFileNumberspserver, ssh10.3 MB
CVSNTC++ChangesetFile and TreeNumberscustom over ssh, sspi, sserver, gserver, pserver55 MB
darcsHaskellChangeset Treen/acustom over ssh, HTTP, email1.7 MB
Dimensions CMC, C++, Java, C#Snapshot or changesetFile and TreeNumbersCustom, HTTP/HTTPS
FossilCSnapshot or changesetTreeSHA-1 or SHA-3 hashesHTTP/HTTPS, custom over ssh7.2 MB
GitC, shell scripts, PerlSnapshotTreeSHA-1 hashescustom, custom over ssh, HTTP/HTTPS, rsync, email, bundles23 MB
GNU archC, shell scriptsChangesetTreeNumbersHTTP, WebDAV
IC ManageC++, CChangesetNumberscustom
MercurialPython, CChangesetTreeNumbers, SHA-1 hashescustom over ssh, HTTP, email bundles 20 MB
MKS IntegrityC, JavaChangesetFileNumberscustom, HTTP
MonotoneC++HybridTreeSHA-1 hashescustom, custom over ssh, file system4.4 MB
Perforce Helix CoreC++, CChangesetTreeNumberscustom
PVCSC++, CChangesetFileNumbers
Rational Team ConcertJavaChangesetTreeNumbersREST services over HTTP/HTTPS
Revision Control SystemCChangesetFileNumbersFile system5.3 MB
SCM AnywhereC++, Java, C#ChangesetFile and TreeNumbersSOAP over HTTP or HTTPS
Source Code Control SystemCChangesetFileNumbersNFS1.3 MB
StarTeamC++, C, JavaSnapshotFile and TreeMD5 hashescustom, TCP/IP
SubversionCChangeset and SnapshotTreeNumberscustom, custom over ssh, HTTP and SSL 41 MB
Surround SCMC++ChangesetFile and TreeNumbersTCP/IP
SynergyJavaChangeset, SnapshotFileNumberscustom, custom over ssh, HTTP
VaultC#ChangesetFile and TreeNumbersHTTP, HTTPS
VestaC++SnapshotTreeNFS15.8 MB
Visual SourceSafeCSnapshotFileNumbersSMB, DCOM
SoftwareProgramming languageStorage methodScope of changeRevision IDsNetwork protocolsSource code size

Features

Table explanation
SoftwareAtomic commitsFile renamesMerge file renamesSymbolic linksPre-/post-event hooksSigned revisionsMerge trackingEnd of line conversionsTagsInternational supportUnicode filename supportSupports large repos
AccuRev SCM
Azure DevOps
GNU Bazaar
BitKeeper
CA Software Change Manager
ClearCase
Code Co-op
Codeville
CVS
CVSNT
darcs
Dimensions CM
Fossil
Git
GNU arch
IC Manage
MKS Integrity
Mercurial
Monotone, mandatory
Perforce Helix Core
Rational Team Concert
Source Code Control System
StarTeam
Subversion.
Surround SCM
Synergy
Vault
Vesta
Visual SourceSafe
SoftwareAtomic commitsFile renamesMerge file renamesSymbolic linksPre-/post-event hooksSigned revisionsMerge trackingEnd of line conversionsTagsInternational supportUnicode filename supportSupports large repos

Advanced features

Table explanation
SoftwareKeyword expansionInteractive commitsExternal referencesPartial checkout/clonePermissionsTimestamp preservationCustom automatic merge toolSupported formatsShared build cache of derived objects
AccuRev SCMgit
Azure DevOps
GNU Bazaarbzr, subversion, git, hg, any that has a fastexporter
BitKeeperbitkeeper
CA Software Change ManagerCA Software Change Manager
ClearCaseClearCase
CVScvs
CVSNTcvs
darcsdarcs
Dimensions CMMigration from ClearCase, Subversion, CVS, PVCS, ChangeMan DS
Fossilfossil, any that has a fastexporter
Gitgit, cvs, subversion, hg, any that has a fastexporter
Mercurialhg, subversion, git, any other format supported by the Convert extension
Perforce Helix CorePerforce
Rational Team ConcertN/A
Source Code Control Systemsccs
Surround SCMSurround
Subversionsubversion
Vesta via SDLVesta
Visual SourceSafe
SoftwareKeyword expansionInteractive commitsExternal referencesPartial checkout/clonePermissionsTimestamp preservationCustom automatic merge toolSupported formatsShared build cache of derived objects

Basic commands

Table explanation
SoftwareRepository initclonepullpushLocal branchescheckoutupdatelockaddremovemovecopymergecommitrevertgenerate bundle filerebase
AccuRev SCM
Azure DevOpsusing Gitclone using Gitgetcommitshelvesetcheckoutgetlockadddeleterenameusing Gitmergecommitundousing Gitget
GNU Bazaar
BitKeeper
ClearCase
CVS
CVSNT
darcs
Fossil
Git
Mercurial
Monotone
Perforce Helix Core
Source Code Control System
Subversion
Surround SCM
Vesta
Visual SourceSafe
SoftwareRepository initclonepullpushLocal branchescheckoutupdatelockaddremovemovecopymergecommitrevertgenerate bundle filerebase

Advanced commands

Table explanation
SoftwareCommand aliasesLock/unlockShelve/unshelveRollbackCherry-pickingBisectIncoming/outgoingGrepRecord
AccuRev SCM
Azure DevOps
GNU Bazaar
BitKeeper
CVSNT
Darcs
Fossil
Git
Mercurial
Monotone
Perforce Helix Core
Subversion
Surround SCM
SoftwareCommand aliasesLock/unlockShelve/unshelveRollbackCherry-pickingBisectIncoming/outgoingGrepRecord

User interfaces

Table explanation
SoftwareWeb interfacesStand-alone GUIsIntegration and/or Plug-ins for IDEs
AccuRev SCMYesWindows, Linux, Unix, macOS, BeOS availableIntelliJ IDEA, Eclipse, Visual Studio
Azure DevOps included Windows included; macOS, Unix availableVisual Studio. Java client for Eclipse IDE and IntelliJ IDEA
GNU Bazaarcan use a plain webserverOlive, bzr-gtk, Bazaar Explorer, QBzr, TortoiseBzr Eclipse, Visual Studio, TextMate, Komodo IDE, WingIDE
BitKeeperincludedincluded
CA Software Change ManagerincludedEclipse-based GUIEclipse, MS Visual Studio
ClearCase included, Clearcase Web Interfaceolder: MS Windows native, Motif-based GUI for Unix-like systems, TSO client for z/OS.Emacs, Eclipse, Visual Studio, KDevelop, IntelliJ IDEA
Code Co-opNot necessary since entire project is replicated locallyWindows
CVScvsweb, ViewVC, othersTortoiseCVS, TkCVS, WinCVS, macOS, GTK, Qt availableEclipse, KDevelop, IntelliJ IDEA, Emacs, Komodo IDE, BBEdit, WingIDE
CVSNTcvsweb, ViewVC, othersWindows, macOS, OS/400, GTK, Qt availableAll those that support CVS, plus commercial plugins for SCCI, Bugzilla, Build
darcs darcs.cgi included; darcsweb, Tracunder development; TortoiseDarcs, macOS,Eclipse, Emacs
Dimensions CMWindows Eclipse, Visual Studio, IntelliJ IDEA, XCode, Powerbuilder
Fossil Embedded webserver included, ability to run multiple repositories via CGI modefuel-scm
Git Gitweb, wit, cgit, GitLab, GitHub, gitorious, Trac, Kallithea, Bitbucket, Stash, Springloops, Bonobo Git Server, Gitea, Gogsgitk, git-gui, tig, Gitbox, TortoiseGit, qgit, gitg, gct, git-cola, Git Extensions, GitEye, SmartGit/Hg, Tower, SourceTree, Sprout, GitX, GitUp, GitKrakenAptana 3 Beta ; Atom; Eclipse ; Helix TeamHub; Netbeans ; KDevelop; Visual Studio ; Emacs ; SAP Web IDE; TextMate ; Vim ; IntelliJ IDEA >8.1 ; Komodo IDE; Anjuta; XCode, WingIDE; PyCharm
GNU archArchZoomArchWay, TlaLogEmacs
IC Manage includedWindows, Linux, Unix, macOSEmacs, Cadence Design Framework, Synopsys Custom Designer
MKS Integrity YesWindows, Linux, Unix, Solaris, AIX,Eclipse, Microsoft Visual Studio, Perforce and others. Also provides support for the industry standard Source Code Control interface
Mercurial included, Trac, KallitheaHgk, gct, TortoiseHg, MacHg,
MacMercurial, Murky, SourceTree, TortoiseHg, SmartGit/Hg
IntelliJ IDEA, Eclipse, NetBeans, Visual Studio 2008, Emacs, Vim, Komodo IDE, Eric Python IDE, WingIDE
MonotoneViewMTN, TracMonotone,Monotone-Viz, Guitone, Monotone Browser
Perforce Helix Core included, P4Web, P4FTPWindows, Linux, Mac macOSEclipse, Visual Studio, Matlab; Game Engines: Unity, Unreal, Amazon Lumberyard; Graphics: Autodesk Maya, 3ds max, Adobe PS
Rational Team Concert YesEclipse-based GUIEclipse integration; MS Visual Studio integration
StarTeam includedWindows, Java, Eclipse, Visual Studio, BDS2006 integration, plus Java command-lineIntelliJ IDEA, Visual Studio, JBuilder, Eclipse
Subversion Apache 2 module included, WebSVN, ViewSVN, ViewVC, Trac, SharpForge, sventon, SpringloopsJava, KDESVN, macOS, Nautilus, Qt, RabbitVCS, RapidSVN, SourceTree, TortoiseSVN Anjuta, BBEdit, Eclipse, Emacs, IntelliJ IDEA, KDevelop, Komodo IDE, MonoDevelop, Netbeans, RabbitVCS, TextMate, Visual Studio, WingIDE. See also Comparison of Subversion clients
Surround SCMYesWindows, macOS, LinuxEclipse, IntelliJ IDEA, JDeveloper, NetBeans, Visual Studio, WebStorm
Synergy via Telelogic Change interfaceWindows, Linux, UnixEclipse, Visual Studio, IntelliJ IDEA
Vault includedWindows, Unix-like, macOSVisual Studio 2003 and higher, Eclipse 3.2 and higher
Vesta VestaWeb
Visual SourceSafenone included; SSWI, VSS RemotingWindows included; Linux, macOS and Solaris using SourceOffSite; any Java VM using Sourceanywhere for VSSVisual Studio, IntelliJ IDEA
SoftwareWeb interfacesStand-alone GUIsIntegration and/or plug-ins for IDEs

History and adoption

Table explanation
SoftwareHistoryNotable users
AccuRev SCM First publicly released in 2002American Airlines, Ford, Lockheed Martin, Orbitz, Xerox, McAfee, Polycom, SanDisk, Siemens, Sony, Symantec, Thomson Financial, Verizon Wireless and many others
Azure DevOps Server First publicly released in March, 2006 as Visual Studio Team System, renamed to Team Foundation Server in 2010 and Azure DevOps Server in 2019.Microsoft
Azure DevOps Services First publicly released in 2012 as Team Foundation Service, renamed to Visual Studio Online in 2013, Visual Studio Team Services in 2015 and Azure DevOps in 2018.Microsoft
GNU Bazaar26.03.2005 Initial release March 26, 2005. Loosely related to baz. Sponsored by Canonical Ltd..Ubuntu, Launchpad, KatchTV,
BitKeeper04.05.2000 Initial release May 4, 2000. Influenced by Sun WorkShop TeamWareLinux Kernel and many companies
CA Software Change Manager Original company founded in 1977; CA SCM first released in 1995.CA does not disclose customer lists without the companies' permission. CA SCM is used by companies with global development teams including 13 of the Fortune 100.
ClearCase Developed beginning in 1990 by Atria Software, following concepts developed by Apollo Computer in DSEE during the 1980s. The most recent version is 9.0.0, released in March 2016.IBM, Alcatel-Lucent, Cisco, Motorola, Siemens, Ericsson, Nokia, Society for Worldwide Interbank Financial Telecommunication and other large organizations worldwide
Code Co-op The first distributed VCS, demoed in 1997, released soon after.
CVS03.07.1986 First publicly released July 3, 1986; based on RCSNetBSD, OpenBSD
CVSNT First publicly released 1998; based on CVS. Started by CVS developers with the goal adding support for a wider range of development methods and processes.Primarily professionals, e.g.: AnandTech, Wachovia, Wells Fargo, Goldman Sachs
darcs09.04.2003 First announced on April 9, 2003Mnet, xmonad, Projects Using Darcs
Dimensions CM Developed by SQL Software under the name "PCMS Dimensions" during the late 1980s. Through number of company acquisitions the product was released under names "PVCS Dimensions", "Dimensions", "ChangeMan Dimensions" and finally "Dimensions CM".Lockheed Martin, European Space Agency, Fujitsu Business Communication Systems and many companies worldwide
Fossil21.07.2007 Fossil and SQLite have used Fossil since 21 July 2007.SQLite, Tcl/Tk Project
Git Started by Linus Torvalds in April 2005, following the BitKeeper controversy.Linux kernel, Android, Bugzilla, DragonFly BSD, GNOME, GNU Emacs, GRUB2, KDE, MySQL, Perl 5, PostgreSQL, X.Org, Cairo, Qt Development Frameworks, Samba, OpenEmbedded, Ruby, Ruby on Rails, Wine, Fluxbox, Openbox, Compiz Fusion, XCB, ELinks, XMMS2, e2fsprogs, GNU Core Utilities, DokuWiki, Drupal, LibreOffice, MediaWiki, Mono, ASP.NET MVC, ADO.NET Entity Framework, NuGet, jQuery and many of its plugins, OpenCV, Wireshark, Django, many companies like Ericsson, Microsoft, Huawei, Apple, Amazon, LG
GNU arch Started by Tom Lord in 2001, it later became part of the GNU project. Lord resigned as maintainer in August 2005.available for GNU Savannah and Gna.org projects
IC Manage Developed by IC Manage, Inc which was founded in 2003 by Shiv Sikand and Dean Drako.many organizations worldwide
PTC Integrity Originally developed by MKS Software. Purchased by PTC in May 2011Many global engineering and IT organizations
Mercurial06.04.2005 Started April 6, 2005 by Matt Mackall, following the BitKeeper controversy. First released on April 19, 2005Python, Mozilla, OpenJDK, NetBeans, Xine, Xen, OpenSolaris, wmii, MoinMoin, Linux-HA, Pidgin, Gajim, Nginx, PyPy, SDL, Facebook, Google
Monotone First released in April 2003CTWM, I2P, Botan
Perforce Helix Core Developed by Perforce Software, Inc which was founded in 1995 by Christopher Seiwald.FreeBSD, Scania AB
Rational Team Concert Version 1.0 released in June, 2008IBM
Revision Control System July 1985RCS is generally superseded by other systems such as CVS, which began as a wrapper on top of RCS.
Source Code Control System Started by Marc Rochkind in 1972.Borland, BT, Cintas, EDS, Kaiser Permanente, Met Office, Quest Software, Raymond James, Siemens, and many more globally distributed companies
Apache Subversion Started in 2000 by CVS developers with goal of replacing CVSASF, clang, gcc, SourceForge, FreeBSD, Google Code, KDE, PuTTY, Zope, Xiph, GnuPG, CUPS, Apache OpenOffice, TWiki, WebKit, available on CodePlex, and many organizations worldwide
Synergy Developed beginning in 1988 by Caseware, as AmplifyControl. The company was renamed Continuus in 1994, where the product became better known as Continuus/CM. Continuus was acquired by Telelogic in 1999 shortly after going public; the product was renamed Telelogic Synergy. IBM acquired Telelogic in 2008 for integration into their Rational tool suite. The product is now known as IBM Rational Synergy.Hewitt Associates
Vault First publicly released in February, 2003
Vesta First publicly released under the LGPL in 2001DEC Alpha team, Compaq Alpha team, Intel microprocessor development
Visual SourceSafe originally created by a company called One Tree Software, version 3.1. Company was bought by Microsoft which released version 4.0 of VSS around 1995
SoftwareHistoryNotable users