Comparison of revision control software

From Wikipedia, the free encyclopedia - View original article

 
Jump to: navigation, search

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

General information[edit]

Table explanation

SoftwareMaintainerDevelopment statusRepository modelConcurrency modelLicensePlatforms supportedCost
AccuRev SCMAccuRev, Inc.actively developedClient–serverMerge or lockProprietaryMost Java Platforms (Unix-like, Windows, OS X)Non-free Quoted on an individual basis.
GNU BazaarCanonical Ltd.actively developedDistributed[nb 1]MergeGNU GPLUnix-like, Windows, OS XFree
BitKeeperBitMover Inc.actively developedDistributedMergeProprietaryUnix-like, Windows, OS XNon-free Quoted on an individual basis.
CA Software Change ManagerCA Technologies[1]actively developedClient-serverMerge or LockProprietaryUnix, Linux, Windows, i5/OSNon-free Named licenses available with volume discounts available
ClearCaseIBM Rationalactively developedClient–serverMerge or lock[nb 2]ProprietaryLinux, Windows, AIX, Solaris, HP UX, i5/OS, OS/390, z/OS,Non-free $4600 per floating license (held automatically for 30-minutes minimum per user, can be surrendered manually)
Code Co-opReliable Softwareactively developedDistributedMergeProprietaryWindowsNon-free $150 per seat
CodevilleRoss Cohenofficial site offline; latest release July 13, 2007 (2007-07-13)Distributedprecise codeville mergeBSDUnix-like, Windows, OS XFree
CVSThe CVS Team[2]maintained but new features not addedClient–serverMergeGNU GPLUnix-like, Windows, OS XFree
CVSNTMarch Hare Software[3] and community membersmaintained and new features under developmentClient–serverMerge or lockGPL or proprietaryUnix-like, Windows, OS X, i5/OSFree (with £425 distribution fee) for older version or £85 commercial license for latest version of CVS Suite or Change Management Server
darcsThe Darcs teamactively developedDistributedMergeGNU GPLUnix-like, Windows, OS XFree
FossilD. Richard Hippactively developedDistributedMergeBSDPOSIX, Windows, OS X, OtherFree
GitJunio Hamanoactively developedDistributedMergeGNU GPLPOSIX, Windows, OS XFree
GNU archAndy TaiunmaintainedDistributedMergeGNU GPLUnix-like, Windows, OS XFree
IC ManageIC Manage Inc.actively developedClient–serverMerge or lockProprietaryUnix-like, Windows, OS XNon-free Commercial
MKS IntegrityIntegrity, a PTC Companyactively developedClient–serverMerge or lockProprietaryUnix-like, WindowsNon-free
LibreSource SynchronizerArtenum[4]maintained and new features under developmentClient–server extended to "tree"[nb 3]MergeGNU GPL[nb 4]Unix-like, Windows, OS XFree
MercurialMatt Mackallactively developedDistributedMergeGNU GPLUnix-like, Windows, OS XFree
MonotoneNathaniel Smith, Graydon Hoareactively developedDistributedMergeGNU GPLUnix-like, Windows, OS XFree
PerforcePerforce Software Inc.actively developedClient–serverMerge or lockProprietaryUnix-like, Windows, OS XCost free license, available on application, for OSS or educational use; Also free for up to 20 users, 20 workspaces, and unlimited files;[5] Or free for unlimited users and up to 1,000 files; Else $740-$900 per seat in perpetuity, or $144-$300 per seat per year on a subscription model, both with volume discounts[6]
Plastic SCMCodice Softwareactively developedClient–serverMerge or lockProprietaryLinux, Windows, OS XFree for up to 15 users; else starting at $595 per seat, or $3,500 per 25 developers per year[7]
Rational Team ConcertIBM Rationalactively developedClient–server[nb 5][8][9]Merge or lockProprietaryLinux, Windows, AIX, Solaris, HP UX, i5/OS, OS/390, z/OS, OS XFree for up to 10 users; else non-free
SCM AnywhereDynamsoft Corporationactively developedClient–serverMerge or LockProprietaryUnix-like, Windows, OS XNon-free Single user free; $299 per user, bulk discount available
Sourceanywhere StandaloneDynamsoft Corporationactively developedClient–serverMerge or LockProprietaryUnix-like, Windows, Linux, OS XNon-free Single user free; $299 per user, bulk discount available
StarTeamBorland (Micro Focus)actively developedClient–serverMerge or lockProprietaryWindows and Cross-platform via Java based clientNon-free $1000 per concurrent, $500 per fixed user.
Subversion (SVN)Apache Software Foundation[10]actively developedClient–server[nb 6]Merge or lock[nb 7]ApacheUnix-like, Windows, OS XFree
Surround SCMSeapine Softwareactively developedClient–serverMerge or lockProprietaryLinux, Windows, OS XFloating $1495 and named $595 per seat.
SVKBest PracticalunmaintainedClient–server, decentralizedMergeArtistic/GPLUnix-like, Windows, OS XFree
Team Foundation Server (TFS)Microsoftactively developedClient–server, DistributedMerge or lockProprietaryWindows, Cross-platform via Visual Studio OnlineFree for up to 5 users in the Visual Studio Online or for open source projects through codeplex.com; else non-free, licensed through MSDN subscription or direct buy.
SynergyIBM Rationalactively developedClient–server and DistributedMerge or lockProprietaryLinux, Windows, Unix-likeNon-free Contact IBM Rational[11]
VaultSourceGear LLCactively developedClient–serverMerge or lockProprietaryUnix-like, Linux, WindowsNon-free $300 per user
VeracitySourceGear LLCactively developedDistributedMerge or lockApacheUnix-like, Linux, WindowsFree
VestaKenneth Schalk; Tim Mann,[12][13]actively developedDistributed NFS-protocol-emulation choice to optionally confederate clients and/or serverslock on branch; merge branch-to-branchLGPLTru64, LinuxFree
Visual SourceSafe (VSS)Microsoftserious bug fixes onlyShared FolderMerge or lockProprietaryWindowsNon-free ~$500 per license or single license included with each MSDN subscription.
PVCSSerena Softwareactively developed ?LockProprietaryWindows, Unix-likeNon-free
SoftwareMaintainerDevelopment statusRepository modelConcurrency modelLicensePlatforms supportedCost

Technical information[edit]

Table explanation

SoftwareProgramming languageStorage methodScope of changeRevision IDsNetwork protocolsSource code size
AccuRev SCMC++, JavaChangesetFileNumber pair NN/NNcustomUnknown
GNU BazaarPython, Pyrex, C[nb 8]SnapshotTreePseudorandomcustom, custom over ssh, custom over HTTP, HTTP, SFTP, FTP, email bundles,[nb 9] WebDAV (with plugin)4.1 MB
BitKeeperCChangesetTreeChangeset keys, numberscustom, HTTP, rsh, ssh, emailUnknown
CA Software Change ManagerC, C++, Java, HTMLChangeset and SnapshotFile and Tree[citation needed]NumbersHTTP, TCP/IPUnknown
ClearCaseC, Java, PerlChangesetFile and Tree [14]Numberscustom (CCFS), custom (MVFS filesystem driver), HTTPUnknown
Code Co-opC++ChangesetUnknownUser ID-Ordinale-mail (MAPI, SMTP/POP3, Gmail), LANUnknown
CodevillePythonUnknownUnknownUnknownUnknownUnknown
CVSCChangesetFileNumberspserver, ssh3.3 MB
CVSNTC++ChangesetFile and Tree[15]Numberscustom over ssh, sspi, sserver, gserver, pserver55MB
darcsHaskellChangeset (Patch)[nb 10]Treen/acustom over ssh, HTTP, email1.7 MB
FossilCSnapshotTreeSHA-1 hashesHTTP7.2 MB[nb 11]
GitC, shell scripts, PerlSnapshotTreeSHA-1 hashescustom (git), custom over ssh,[16] HTTP/HTTPS, rsync, email, bundles10.2 MB
GNU archC, shell scriptsChangesetTreeNumbersHTTP, WebDAVUnknown
IC ManageC++, CChangesetUnknownNumberscustomUnknown
LibreSource SynchronizerJavaChangesetUnknownTimestampsHTTP, File-SystemUnknown
MercurialPython, CChangesetTreeNumbers,[nb 12] SHA-1 hashescustom over ssh, HTTP, email bundles (with standard plugin)1.2 MB
MKS IntegrityC, JavaChangesetFileNumberscustom, HTTPUnknown
MonotoneC++Hybrid[nb 13]TreeSHA-1 hashescustom (netsync), custom over ssh, file system4.4 MB
PerforceC++, CChangesetTreeNumberscustomUnknown
Rational Team ConcertJavaChangesetTreeNumbersREST services over HTTP/HTTPSUnknown
SCM AnywhereC++, Java, C#ChangesetFile and TreeNumbersSOAP over HTTP or HTTPSUnknown
Sourceanywhere StandaloneC++, JavaChangesetFile and TreeNumbersTCP/IPUnknown
StarTeamC++, C, JavaSnapshotFile and TreeMD5 hashescustom, TCP/IPUnknown
SubversionCChangeset and SnapshotTreeNumberscustom (svn), custom over ssh, HTTP and SSL (using WebDAV)5.2 MB
Surround SCMC++ChangesetFile and TreeNumbersTCP/IPUnknown
SVKPerlChangesetTreeNumbersUnknownUnknown
SynergyJavaChangeset (text), Snapshot(binary)FileNumberscustom, custom over ssh, HTTPUnknown
Team Foundation ServerC++ and C#ChangesetFile and TreeNumbersSOAP over HTTP or HTTPSUnknown
VaultC#ChangesetUnknownUnknownHTTP, HTTPSUnknown
VeracityC, JavaScriptChangesetTreeNumbers, [nb 14] SHA-1, SHA-2 and Skein hashes.HTTP52 MB
VestaC++SnapshotTreeUnknownNFS15.8 MB
Visual SourceSafeCSnapshotFileNumbersSMB, DCOMUnknown
SoftwareProgramming languageStorage methodScope of changeRevision IDsNetwork protocolsSource code size

Features[edit]

Table explanation

SoftwareAtomic commitsFile renamesMerge file renamesSymbolic linksPre/post-event hooksSigned revisionsMerge trackingEnd of line conversionsTagsInternational SupportUnicode filename supportSupports large repos
AccuRev SCMYesYesPartial[nb 15]YesYesYesYesYesN/AYesYes[17]Yes[18][19]
GNU BazaarYesYesYesYesYesYesYesYes[20]YesYesYesUnknown
BitKeeperYesYesYesYesYesUnknownYesUnknownYesUnknownUnknownYes
CA Software Change ManagerYesYesYesYesYesYesYesYesYesYesYesUnknown
ClearCasePartial[nb 16]YesYesYesYesYesYesYesYesYes[21]UnknownYes
Code Co-opYesYesYesNoPartialNoNoNoYesUnknownUnknownUnknown
CodevilleUnknownUnknownUnknownUnknownUnknownUnknownUnknownUnknownUnknownUnknownUnknownUnknown
CVSNoNoNoNoPartialNoNoYesYesUnknownNoYes
CVSNTYesYesYesYesYesNoYesYesYesYesYesYes
darcsYesYesYesNo[nb 17]YesYesN/A[nb 18]NoYesNoYes[nb 19]Unknown
FossilYesYesYesYesNoYesYesYes[nb 20]YesYesYesUnknown
GitYesPartial[nb 21]YesYesYesYes[nb 22]YesYesYesPartial[nb 23]Yes[nb 24]Partial[nb 25]
GNU archYesYesUnknownYesYesYesUnknownUnknownYesUnknownUnknownUnknown
IC ManageYesYesNoYesYesYesYesYesYesYesUnknownUnknown
MKS IntegrityYesYesYesNoYesYes[nb 26]Yes[nb 27]YesYesYesYesUnknown
LibreSource SynchronizerYesYesYesNoPartial[nb 28]NoYes[nb 29]NoYesUnknownUnknownUnknown
MercurialYesYesYesYesYesYesYesYesYesYes[nb 30]Partial[nb 31]Partial[22]
MonotoneYesYesYesNo[nb 32]YesYes, mandatoryYesYesYesUnknownYesUnknown
PerforceYesYes[23]Yes[24]Partial[nb 33]YesYesYes[25]YesYesYes[26]Yes[27]Yes
Rational Team ConcertYesYesYesYesYes[nb 34]YesYesYesYesYesYesUnknown
StarTeamYes[nb 35]YesUnknownNoNoNoYesYesYesYesUnknownUnknown
SubversionYesYes[nb 36]Partial[nb 37]YesYesNoYes.[nb 38]YesPartial[nb 39]YesYesYes
Surround SCMYesYesYesYesYesNoYesYesYes[28]YesYesYes
SVKYesYesYesYesYes[nb 40]Yes[29]YesYesYesYesUnknownUnknown
SynergyYesYesYesYesYesYesYesYesYesYesYes[nb 41]Yes
Team Foundation ServerYesYesYesYesYesYesYesYesYesYesYesYes
VaultYesYesYesNoYesNoNoYesYesUnknownUnknownUnknown
VeracityYesYesYesYesYesNoYesYesYesNoYesYes
VestaYesYesUnknownUnknownYesNoNoNoYesNoUnknownYes
Visual SourceSafeNoNo[nb 42]UnknownNoYesNoNoUnknownYesYesUnknownUnknown
SoftwareAtomic commitsFile renamesMerge file renamesSymbolic linksPre/post-event hooksSigned revisionsMerge trackingEnd of line conversionsTagsInternational SupportUnicode filename supportSupports large repos

Advanced features[edit]

Table explanation

softwarekeyword expansioninteractive commitsexternal referencespartial checkout/clonepermissionstimestamp preservationcustom automatic merge toolsupported formatsshared build cache of derived objects
AccuRev SCMYesUnknownYesYesexecution bit onlyYesYesgit (bi-dir)[30]No
GNU BazaarYes[31]Yes[32]Yes[33]Noexecution bit onlyNo[nb 43]Yes[34]bzr, subversion,[35] git,[36] hg,[37] any that has a fastexporterNo
BitKeeperPOSIX and RCSYesUnknownUnknownYesUnknownYesbitkeeperNo
CA Software Change ManagerNoYesNoYesexecution bit onlyYesYesCA Software Change ManagerNo
ClearCaseYes[38]NoNoYesYesYes[nb 44]YesClearCaseYes
CVSRCSNoYesYes[nb 45]Partial[nb 46]YesNocvsNo
CVSNTRCSYes[nb 47]Yes[nb 48]Yes[nb 49]YesYesNocvsYes[nb 50]
darcsNoYesNoNo[nb 51]Partial[nb 52]Noconflicts onlydarcsNo
FossilNoYesNoNoexecution bit only[39]UnknownNofossil (uses sqlite), any that has a fastexporter[40]No
GitNo[nb 53]Yes[nb 54]Yes[41]No[nb 55]execution bit onlyNo[nb 56]Yesgit, cvs, subversion, hg, any that has a fastexporterNo
MercurialYes[42]Yes[43]Yes[44]Partial[45]execution bit onlythrough (alpha) extension[46]non-trivial cases onlyhg, subversion,[47] git,[48] any other format supported by the Convert extension[49]No
Rational Team ConcertNoYesYesYesYesUnknownUnknownN/ANo
Surround SCMYesNoNoYesNoYesYes[nb 57]SurroundNo
SVKYesYes[nb 58]UnknownYesUnknownUnknownUnknownsubversionNo
SubversionYes[50]Partial[nb 59]Yes[51]Yesexecution bit onlyPartial[nb 60]Yes[nb 61]subversionNo
Team Foundation ServerUnknownYesUnknownYesUnknownUnknownUnknownUnknownUnknown
VeracityNoNoNoNoYesYesYesgit, cvs, subversion, hg, any that has a fastexporterNo
VestaNoNoYes via SDLNoUnknownYesNoVestaYes
softwarekeyword expansioninteractive commitsexternal referencespartial checkout/clonepermissionstimestamp preservationcustom automatic merge toolsupported formatsshared build cache of derived objects

Basic commands[edit]

Table explanation

softwarerepository initclonepullpushlocal branchescheckoutupdatelockaddremovemovecopymergecommitrevertgenerate bundle filerebase
AccuRev SCMmkdepotN/AN/AN/Amkstreammkwsupdateanchoradddefunctmovecp [then] add / incl -s / lnmergekeep / promotepurge / revertN/Achstream
GNU Bazaarinitbranchpullpushcreate-local-branch[nb 62]checkoutupdateUnknownaddrmmvN/Amergecommitrevertsendrebase[nb 63]
ClearCaseinitN/AN/AN/AN/Acheckoutupdatelock / unlockmkelemrmnamemvN/Amergecheckinuncheckout / rmverN/Afindmerge
CVSinitN/AN/AN/AN/AcheckoutupdateUnknownaddrmN/AN/Aupdate -jcommitremove [then] updateN/AN/A
CVSNTinitN/AN/AN/AN/AcheckoutupdateeditaddrmrenameN/Aupdate -jcommitupdate -CN/AN/A
darcsinitget / putpullpushN/A[nb 64]getpullUnknownaddremovemoveN/Apull / pushrecordrevertsend -o[nb 65]Coming soon[dated info]
Fossilnew / openclonepullpushbranch / commit --branchclone/openupdateN/Aaddrm/delmv/renameN/AmergecommitrevertFossil's repository is single sqlite file itselfN/A
Gitinit / init --bareclonefetch[nb 66]pushbranchcheckoutpullN/Aaddrmmvcp [then] git add[nb 67]mergecommitrevertbundlerebase
Mercurialinitclonepullpushbookmark[nb 68]clonepull -uN/Aaddrmmvcopymergecommitrevertbundlerebase[52]
MonotoneinitclonepullpushN/AcheckoutupdateUnknownadddroprenameN/AmergecommitrevertN/AN/A
Perforcep4 client && p4 syncp4 syncp4 syncp4 submitRequires migration to recent streams featureeditsynclock / unlockadddeletemovecopyintegratesubmitrevertUnknownN/A
SVKsvk depotmap [or] svnadmin create)mirrorpullpushcopycheckoutupdateUnknownaddrmmvcpmergecommitrevertN/Asmerge -I
Subversionsvnadmin createsvnadmin hotcopy[work-around]: svnadmin load[work-around]: svnadmin dumpN/AcheckoutupdatelockaddrmmvcpmergecommitrevertN/AN/A
Surround SCMmkmainlineN/AN/AN/AmkbranchcheckoutgetcheckoutaddrmmoveN/AmergecheckinvoidcheckoutN/Arebase
Veracityrepo initclonepullpushbranchcheckoutpull -ulockaddrmmvN/AmergecommitrevertN/AN/A
VestavcreatevreplvreplvreplN/Avcheckoutvadvancevcheckout[… then] vcheckin[nb 69]vrmmv [then] vcheckin[nb 70]cp [then] vcheckin[nb 71]vdiffvcheckinvcheckin -c 0vmake [or] vestavadvance
Visual SourceSafe?UnknownUnknownUnknownN/AGet LatestGet LatestCheck OutAdd FilesDelete?Unknown?Check InUndo Check OutUnknownUnknown
softwarerepository initclonepullpushlocal branchescheckoutupdatelockaddremovemovecopymergecommitrevertgenerate bundle filerebase

Advanced commands[edit]

Table explanation

Softwarecommand aliaseslock/unlockshelve/unshelverollbackcherry-pickingbisectincoming/outgoinggreprecord
AccuRev SCMNoenable file lockingNorevert / purgepromoteNoNoNoUnknown
GNU Bazaar[in '.bazaar/bazaar.conf' file]Noshelve/unshelveuncommitmerge (non-tracking)bisect (bisect plugin)missing --theirs-only/missing --mine-onlygrep (grep plugin)Unknown
CVSNT[in '.cvsrc' file]edit -x/unedit[nb 72]Noadmin -o[nb 73]yes[nb 74]annotate[nb 75]Nono[53]No
DarcsNoNorevert/unrevertunrecordyes[nb 76]trackdown[nb 77]pull/push --dry-runNorecord
FossilNoNostash pop/stash apply[nb 78]merge --rollbackmerge --cherrypickbisectNosearchNo
Git[in '.gitconfig' file]Nostash/stash pop[nb 79]reset HEAD^cherry-pickbisectcherrygrepadd -p
Mercurial[in '.hgrc' file]Noshelve/unshelve (bundled extension[54])rollbackgraft(core[55]) or transplant(bundled extension[56])bisectincoming/outgoinggreprecord (bundled extension[57])
Monotone[in monotonerc]NoNokill_rev_locally[nb 80]pluckbisectNoNoUnknown
Perforcevia broker[58]lock/unlockshelve/unshelveobliterateinteg[59]UnknownUnknowngrepUnknown
SVKNoNoNoNosvk mergeNostatus[nb 81]NoNo
SubversionNolock/unlockNoNosvnmerge cherry-pickingThird party tool[nb 82]status -u[nb 83]NoNo
Surround SCMNocheckoutshelfrollbackduplicatechangesNodiffsearchNo
Team Foundation ServerYeslock/unlockshelve/unshelverollbackmergeNoUnknownUnknownNo
VeracityNolock/unlock [nb 84]NoNoNoNoincoming/outgoingNoNo
Softwarecommand aliaseslock/unlockshelve (stash)/unshelverollbackcherry-pickingbisectincoming/outgoinggreprecord

User interfaces[edit]

Table explanation

SoftwareWeb interfacesStand-alone GUIsIntegration and/or Plug-ins for IDEs
AccuRev SCMYesWindows (incl. explorer integration), Linux, Unix, OS X, BeOS availableIntelliJ IDEA, Eclipse, Visual Studio
GNU Bazaarcan use a plain webserver, webserve, Launchpad, loggerhead or TracOlive, bzr-gtk (GTK+), Bazaar Explorer (Qt), QBzr (Qt), TortoiseBzr (Windows)Eclipse (BzrEclipse, QBzrEclipse), Visual Studio (bzr-visualstudio), TextMate (TextMateBundle), Komodo IDE
CA Software Change ManagerincludedEclipse-based GUIEclipse, MS Visual Studio
ClearCaseincluded, Clearcase Web Interfaceolder: MS Windows native, Motif-based GUI for Unix-like systems, TSO client for z/OS.Emacs, Eclipse ( IBM Proprietary, Eclipse-CCase ), Visual Studio (IBM proprietary), KDevelop (standard?), IntelliJ IDEA (standard in Ultimate Edition)
Code Co-opNot necessary since entire project is replicated locallyWindowsUnknown
CVScvsweb, ViewVC, codeBeamer, othersTortoiseCVS, TkCVS (Tcl/Tk), (Windows Explorer), WinCVS, OS X, GTK, Qt availableEclipse (Team), KDevelop (standard), IntelliJ IDEA (standard in Community and Ultimate Editions), Emacs (standard VC), Komodo IDE, BBEdit
CVSNTcvsweb, ViewVC, othersWindows, OS X, OS/400, GTK, Qt availableAll those that support CVS, plus commercial plugins for SCCI, Bugzilla, Build
darcsdarcs.cgi included; darcsweb, Tracunder development; TortoiseDarcs (Windows Explorer), OS X (alpha),Eclipse (eclipsedarcs), Emacs (vc-darcs.el)
FossilEmbedded webserver included (ui/server mode), ability to run multiple repositories via CGI modeUnknownUnknown
GitGitweb, wit, cgit, GitHub, gitorious, Trac, codeBeamer, Bitbucket, Stashgitk, git-gui (Tcl/Tk), tig, Gitbox (OS X), TortoiseGit, qgit, gitg (GNOME/GTK), (h)gct (Qt), git-cola (Qt), Git Extensions (Windows), GitEye, SmartGit/Hg, Tower, SourceTree (OS X/Windows), Sprout (OS X), GitX (OS X)Aptana 3 Beta (Aptana Studio 3 with Git Integration); Eclipse (JGit/EGit); Netbeans (NbGit); KDevelop; Visual Studio (Git Extensions); Emacs (extension for standard VC); TextMate (Git TextMate Bundle); Vim (VCSCommand plugin and fugitive plugin); IntelliJ IDEA >8.1 (standard in Community and Ultimate Editions); Komodo IDE; Anjuta
GNU archArchZoomArchWay (GTK2), TlaLogEmacs (standard VC)
IC ManageincludedWindows, Linux, Unix, OS XEmacs, Cadence Design Framework, Synopsys Custom Designer
MKS IntegrityYesWindows, Linux, Unix, Solaris, AIX,Eclipse, Microsoft Visual Studio, Perforce and others. Also provides support for the industry standard Source Code Control (SCC) interface[60]
LibreSource SynchronizerLibreSourceWindows, Linux, Unix, OS X available[nb 85]Unknown
Mercurialincluded,[nb 86] Bitbucket, Trac, codeBeamerHgk (Tcl/Tk), (h)gct (Qt), TortoiseHg (Windows Explorer, Nautilus), MacHg,

MacMercurial, Murky, SourceTree (Windows/OS X), TortoiseHg, SmartGit/Hg

IntelliJ IDEA (hg4idea 3:rd party plugin), Eclipse (Mercurial Eclipse), NetBeans ([61]), Visual Studio 2008 ([62]), Emacs, Vim (VCSCommand plugin), Komodo IDE, Eric Python IDE
MonotoneViewMTN, TracMonotone,Monotone-Viz (GTK+), Guitone (Qt), Monotone Browser (GTK+, Perl)Unknown
Perforceincluded, P4Web, P4FTPWindows, Linux, Unix, OS X, BeOS availableEclipse, Visual Studio (P4SCC), KDevelop (standard?), IntelliJ IDEA (standard in Ultimate Edition), Komodo IDE, BBEdit, Emacs (p4.el)
Rational Team ConcertYesEclipse-based GUIEclipse integration; MS Visual Studio integration(Limited)
StarTeamincludedWindows, Java, Eclipse, Visual Studio, BDS2006 integration, plus Java command-lineIntelliJ IDEA (standard in Ultimate Edition), Visual Studio, JBuilder, Eclipse
SubversionApache 2 module included, WebSVN, ViewSVN, ViewVC, Trac, SharpForge, sventon, codeBeamerJava, KDESVN, OS X[63] (including Finder integration), Nautilus, Qt, RabbitVCS, RapidSVN, SourceTree (OS X), TortoiseSVN (Windows Explorer)Anjuta, BBEdit, Eclipse (Subclipse, Subversive), Emacs (standard VC), IntelliJ IDEA (standard in Community and Ultimate Editions), KDevelop (standard), Komodo IDE, MonoDevelop (standard), Netbeans, RabbitVCS (for GEdit), TextMate (SVNMate plugin), Visual Studio (AnkhSVN, VisualSVN). See also Comparison of Subversion clients
Surround SCMNoWindows, OS X, LinuxDreamweaver, Eclipse, IntelliJ IDEA, JBuilder, JDeveloper, KDevelop, NetBeans, Powerbuilder, Visual Studio, WebStorm, XCode
Synergyvia Telelogic Change interfaceWindows (incl. explorer integration), Linux, UnixEclipse (Telelogic proprietary), Visual Studio (Telelogic proprietary), IntelliJ IDEA (Telelogic proprietary)
Team Foundation Serverincluded (Sharepoint Server used for web services)Windows included; OS X, Unix availableVisual Studio. Java client for Eclipse IDE and IntelliJ IDEA (standard in Ultimate Edition)
VaultincludedWindows, Unix-like, OS XVisual Studio 2003 and higher, Eclipse 3.2 and higher
VeracityincludedTortoise interface for WindowsNo
VestaVestaWebNoNo
Visual SourceSafenone included; SSWI, VSS RemotingWindows included; Linux, OS X and Solaris using SourceOffSite; any Java VM using Sourceanywhere for VSSVisual Studio, IntelliJ IDEA (standard in Ultimate Edition)
SoftwareWeb interfacesStand-alone GUIsIntegration and/or plug-ins for IDEs

History and adoption[edit]

Table explanation

SoftwareHistoryNotable users
AccuRev SCM2002 First publicly released in 2002American Airlines, Ford, Lockheed Martin, Orbitz,[64] Xerox, McAfee,[65] Polycom, SanDisk,[66] Siemens, Sony, Symantec,[67] Thomson Financial, Verizon Wireless[68] and many others
GNU BazaarLoosely related to baz. Sponsored by Canonical Ltd..Ubuntu, Launchpad, KatchTV,[69] MySQL, GRUB2, Bugzilla, GNU Emacs
BitKeeperInfluenced by Sun WorkShop TeamWareLinux Kernel (2002–2005) and many companies[70]
CA Software Change ManagerOriginal company founded in 1977; CA SCM (then called CCC/Harvest) 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.
ClearCase1990 Developed beginning in 1990 by Atria Software, following concepts developed by Apollo Computer in DSEE during the 1980s. The most recent version is 8.0.1, released in Nov 2011.IBM, Alcatel-Lucent, Cisco, Motorola, Siemens, Ericsson, Nokia, Society for Worldwide Interbank Financial Telecommunication and other large organizations worldwide[citation needed]
Code Co-op1997 The first distributed VCS, demoed in 1997,[71] released soon after.Clients include: Logitech, HP, Ericsson[citation needed]
CVS1986 First publicly released July 3, 1986; based on RCSthousands of organizations worldwide[citation needed]
CVSNT1998 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 (not hobbyists), e.g.: AnandTech,[72] Wachovia,[73] Wells Fargo,[74] Goldman Sachs [75]
darcs2003 First announced on April 9, 2003Mnet, xmonad, Projects Using Darcs
Fossil2007 Fossil and SQLite have used Fossil since 21 July 2007.SQLite, Fossil, Tcl/Tk Project
Git2005 Started by Linus Torvalds in April 2005, following the BitKeeper controversy.[76]Linux kernel, Android, GNOME, KDE, Perl 5,[77] 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, MediaWiki,[78] Mono, ASP.NET MVC, ADO.NET Entity Framework, NuGet, jQuery and many of its plugins, OpenCV, OpenOffice.org (Also see list of Git projects)
GNU arch2001 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 Manage2003 Developed by IC Manage, Inc which was founded in 2003 by Shiv Sikand and Dean Drako.many organizations worldwide[79]
MKS Integrity2003 Originally developed by MKS Software. Purchased by PTC in May 2011[80]Many global engineering and IT organizations[81]
LibreSource Synchronizer2005 First publicly released on June 13, 2005Most of the LibreSource Community
Mercurial2005 Started April 6, 2005 by Matt Mackall, following the BitKeeper controversy.[76] First released on April 19, 2005Python,[82] Mozilla, OpenJDK, NetBeans, Xine, Xen, OpenSolaris, wmii, MoinMoin, Linux-HA, Pidgin (Also see list of projects using Mercurial)
Monotone2003 First released in April 2003CTWM, Xaraya, I2P[83]
Perforce1993 Developed by Perforce Software, Inc which was founded in 1995 by Christopher Seiwald.many organizations worldwide,[84] FreeBSD,[85] Google[86]
Rational Team Concert2008 Version 1.0 released on June, 2008IBM
Revision Control System1985 July 1985RCS is generally (but not always) superseded by other systems such as CVS, which began as a wrapper on top of RCS.
Source Code Control System1972Started by Marc Rochkind in 1972 (binary history files, written in Snobol on IBM-370[citation needed]), SCCSv4 with text history files was published February 18, 1977.[citation needed] The same history file format is still used in SCCSv5.[original research?]as the POSIX source-control tool, SCCS is widely available on UNIX platforms, but not included in many Linux distributions. Sun WorkShop TeamWare uses SCCS files.
StarTeam1995 Version 1.0 1995;[87] Developed by StarBase software, acquired by Borland(which was acquired by Micro Focus).Borland, BT, Cintas, EDS, Kaiser Permanente, Met Office, Quest Software, Raymond James, Siemens, and many more globally distributed companies[88]
Subversion2000 Started in 2000 by CVS developers with goal of replacing CVSASF, SourceForge, FreeBSD, Google Code, KDE (-2011), GCC, PuTTY, Zope, Xiph, GnuPG, CUPS, Wireshark, TWiki, Django, WebKit, available on CodePlex, and many organizations worldwide[89]
SVK2003 Authored by Chia-liang Kao with Audrey Tang. First version was on November 19, 2003. 1.00 on May 9, 2005. 2.0.0 on Dec 28th, 2006. SVK became a product of Best Practical on June 5, 2006.Request Tracker
Synergy1988 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.General Motors, BMW, Chrysler, Nokia, Philips, Raytheon, Morgan Stanley, Friends Provident, Boeing, Lockheed Martin, Siemens and other small, medium and large organizations worldwide[citation needed]
Team Foundation Server2006 First publicly released on March, 2006Available on CodePlex, Microsoft itself and other large organizations worldwide[citation needed]
Vault2003 First publicly released in February, 2003Unknown
Vesta1991 First publicly released under the LGPL in 2001DEC Alpha team, Compaq Alpha team, Intel microprocessor development
Visual SourceSafe1995 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 1995Unknown
SoftwareHistoryNotable users

See also[edit]

Notes[edit]

  1. ^ Bazaar is a Distributed version control system but it can also be used in a centralized manner using lock step development and checkouts.
  2. ^ In ClearCase, a trigger may be set to allow for the lock model, and this is done at many sites. However, ClearCase development usually takes place on private branches where each developer is given their own branch, so the lock vs. merge concurrency model doesn't matter as much. Code is merged back to the main branch once the developer is ready to deliver their code to the project.
  3. ^ "a workspace can be synchronized with more than one LibreSource Synchronizer. As a limitation, the network must have tree topology." says LibreSource Synchronizer.
  4. ^ As of version 2.5, "LibreSource is now released under GPL Version 2". 
  5. ^ RTC is not a distributed revision control system; but has some distributed feature that can be configured
  6. ^ SVK allows Subversion to have Distributed branches.
  7. ^ In Subversion, a file attribute enables the lock model on per-file basis. This file attribute can be set automatically using file name wildcard expressions.
  8. ^ Bazaar's critical modules are written in Pyrex. They are automatically translated to pure C; except for the patience sorting module, used in merge resolution, which is written directly in the C language.
  9. ^ A Bazaar bundle is a summary diff, with sufficient extra information to preserve history.
  10. ^ Snapshots with binary files. It's discussed to have binary changesets in future (darcs 3)
  11. ^ 4 MB of which are sqlite3.c
  12. ^ Mercurial revision numbers are local to a repository; they can differ from repository to repository depending on in which order merges are performed.
  13. ^ A Monotone's revisions represent changesets and its manifests represent snapshots, each revision is linked to some manifest. But manifests are legacy constructs, they aren't kept in the database anymore and reconstructed on the fly if needed. The real work now happen in rosters which are hybrid snapshot/changeset structures.
  14. ^ Veracity revision numbers are local to a repository; they can differ from repository to repository depending on in which order merges are performed.
  15. ^ Evil twins are common.Evil Twins in SCM, Not Hollywood
  16. ^ Atomic commit can be enabled for individual checkin's ClearCase 7.1.1 release notes.
  17. ^ See FAQ
  18. ^ darcs' patches each bear a unique identifier, impossible to merge twice the same patch in a repository (without destructively modifying history using "unsafe" commands).
  19. ^ Although it stores (and shows by default) 8-bit filename. See FAQ
  20. ^ Controlled by the 'crnl-glob' setting ([1])
  21. ^ Git does not explicitly track renames, because by design it does not track individual files. Renames and split of source files are detected after the fact, if the file content does not change dramatically.
  22. ^ Since git-1.7.9 (see release notes). Older versions do not sign commits, only tags (see the -s option in git-tag(1) Manual page)
  23. ^ Git itself is not internationalized, just git-gui and gitk (both are shipped with git).
  24. ^ UTF-8 filenames are supported as of version 1.7.10 (MSysGit release notes).
  25. ^ Git has some issues with very large repositories. See Section Better big-file support and Section Designing a faster index format in SoC 2012 Ideas.
  26. ^ Integrity enabled change packages provide complete workflow and 21 CFR Part 11 compliant digital signatures against the item controlling the change package.
  27. ^ 2009 SP5 added a feature to merge child development paths.
  28. ^ Its possible to embed the action in a shell or Ant script.
  29. ^ A merged is tracked by its workspace origin.
  30. ^ Mercurial is in the process of being translated to at least Dutch and Chinese
  31. ^ Support depends upon host OS and is well supported under Unix, but not Windows OSs, due to lack of host support. See [2]
  32. ^ It could be done via user level hooks
  33. ^ Perforce will version-control symbolic links themselves, but will not recognise its own version-controlled views (local file trees), if you access them via symbolic links.
  34. ^ Through the procees behaviour components: Operation advisors and Operation participants. http://jazz.net/library/article/292
  35. ^ StarTeam supports atomic commits as of version 2006
  36. ^ Subversion can move a file and conserve its history, if and only if the target of the move is in the same Subversion repository as the source. Cross-repository moves require third-party tools such as svk.
  37. ^ Since SVN 1.8 subversion supports improved move-tracking on the client side. On the server-side it's not supported yet.
  38. ^ New to SVN 1.5 <http://subversion.apache.org/docs/release-notes/1.5.html#merge-tracking>. A separate tool "svnmerge" <http://www.dellroad.org/svnmerge/> provides merge tracking for older versions.
  39. ^ In Subversion, tags are a special case of the more generic "cheap copy" concept of Subversion. Per convention, a tag is a copy into a directory named "tags". Because of this, even tags are versioned. See http://svnbook.red-bean.com/nightly/en/svn.branchmerge.tags.html for more information. The reason for partial support in the table is because Subversion's emulation of tags in this manner does not meet the requirement that the tag name can be used in place of any revision identifier wherever the user may be required to enter one. This column would be meaningless if the definition were to be loosened enough to encompass Subversion's approach as every version control system supports branching and would therefore support tags as well.
  40. ^ Uses subversion server
  41. ^ in Asian releases (v6.6a to v7.1a) and since version 7.2 in general
  42. ^ Version change history is removed upon rename; old name not referenced.
  43. ^ not implemented yet
  44. ^ Can not be disabled in dynamic views.
  45. ^ Using alias of the CVSROOT/modules file.
  46. ^ CVS records executable bit when a file is added, but does not allow changing it later on.
  47. ^ This is a GUI feature supported by TortoiseCVS and WinCVS both of which include/use CVSNT.
  48. ^ Same as CVS, plus also the ability to have replicated repositories including 'shadow' repositories.
  49. ^ Use the module/directory name or an alias created using CVSROOT/modules or CVSROOT/modules2 administration file.
  50. ^ CVSNT supports this when the make/build tool used also supports it.
  51. ^ Darcs can do sparse checkouts from explicit checkpoints on darcs-1 repositories, but not from darcs-2 ones[citation needed]
  52. ^ Darcs can automatically detect #! scripts and make them executable on checkout.
  53. ^ The Git FAQ states that keyword expansion is not a good thing
  54. ^ add -i and add -p, see git-add(1) Manual Page
  55. ^ The Git Community Handbook clearly explains that "Git does not allow partial checkouts"[not in citation given]
  56. ^ The Git FAQ explains why preserving modification time is considered harmful
  57. ^ Configurable on server as a Project Option and on the client as a User Option.
  58. ^ commit --interactive, see SVK::Command::Commit
  59. ^ Through third-party tools such as Tortoise SVN.
  60. ^ SVN can not preserve file modification times. On request by the client, it can restore check-in time as last-modified time. Disabled by default.
  61. ^ MIME type of the file must be detected as a "human-readable" MIME type, even if the merge tool can work with non-human-readable files
  62. ^ bzr-local-branches plugin
  63. ^ rebase plugin
  64. ^ darcs doesn't have named branches, local or not, branching is handled solely through repository cloning
  65. ^ darcs send prepares a bundle of patches, defaults to sending it by mail but can send it to a file instead
  66. ^ pull is fetch plus merge.
  67. ^ copies are detected after the fact, much like renames
  68. ^ Mercurial Bookmarks are similar to local branches.
  69. ^ Through any of various means, place (to-be-immutable) file in an immutable directory prior to vcheckin.
  70. ^ mv(1) or link(2) the immutable file from its origin immutable directory to its destination immutable directory prior to vcheckin.
  71. ^ Through any of various means, copy the immutable file from its origin immutable directory to its destination immutable directory prior to vcheckin.
  72. ^ You can also enable this as a central preference in the repository server control panel or configuration file
  73. ^ Requires administrator privileges. You can 'rollback' a change using 'cvs update –e –j @commitid –j "@<commitid"' but the change and rollback evidence remains in the history
  74. ^ yes - use TortoiseCVS or WinCVS to commit the change to the destination and select which specific files to keep
  75. ^ bisect is also available for cvs which should work with CVSNT
  76. ^ darcs operate on patches not revision, cherrypicking simply consists in pulling a given patch from one repository to another one as long as the dependencies are fulfilled
  77. ^ trackdown performs an automated search by repeatedly running a provided command on previous revisions on the working copy until the command succeeds (doesn't return an error code)[dead link]
  78. ^ fossil stash supports multiple shelves with comments.
  79. ^ git stash is a multi-level shelve, it's possible to shelve several change groups at the same time
  80. ^ Only works on a local repository and only on revisions without children. The disapprove command might be an alternative.
  81. ^ svk status lists differences between working copy and repository, not differences between two repositories
  82. ^ SVN Bisect tool svn-bisect
  83. ^ svn status lists differences between working copy and repository, not differences between two repositories
  84. ^ locks are advisory, and can't be enforced on disconnected instances
  85. ^ Any OS that support a Java Virtual Machine 1.5
  86. ^ hgweb for single-repository access and hgwebdir for multiple repository access from a single HTTP address

References[edit]

  1. ^ Computer Associates 
  2. ^ "CVS team member list", Non-GNU Savannah, The GNU Project 
  3. ^ CVS Pro, March Hare 
  4. ^ "Artenum, Paris". 
  5. ^ Get Started with Perforce for Free!, Perforce 
  6. ^ Licensing Options, Perforce 
  7. ^ Licesing and pricing, PlasticSCM 
  8. ^ "distributed version control systems (DVCS) Comparisons [sic]". Jazz Forums. 
  9. ^ Jean-Michel Lemieux, Countdown to the next Rational Team Concert: Part II – Source control enhancements, Jazz Community 
  10. ^ Apache Software Foundation 
  11. ^ Rational Synergy, IBM 
  12. ^ Vesta Configuration Management System, Sourceforge 
  13. ^ Vesta Configuration Management System, Vesta 
  14. ^ IBM - Rational ClearCase - United States 
  15. ^ "Changesets". March Hare Software Ltd. Retrieved 8 May 2012. 
  16. ^ Git Server Protocol 
  17. ^ http://www.accurev.com/download/docs/5.3.0_books/AccuRev_5_3_0_Install_Release_Notes.pdf
  18. ^ "SCM News - Kronos Turns to AccuRev for Software Configuration Management". AccuRev. 2004-04-26. Retrieved 2014-01-26. 
  19. ^ "Enhanced Performance and Scalability for Cross-Platform Geographically Distributed Teams". AccuRev. 2008-09-23. Retrieved 2014-01-26. 
  20. ^ "EOL conversions are supported since bzr 1.14". Doc.bazaar-vcs.org. Retrieved 2014-01-26. 
  21. ^ Support Policy for National Languages and ClearCase from IBM Support
  22. ^ Largefiles Extension since Hg Rev.:2.0
  23. ^ [3] from the Perforce User's Guide
  24. ^ [4] from the Perforce User's Guide
  25. ^ "Perforce Public Knowledge Base - Home". Perforce.com. Retrieved 2014-01-26. 
  26. ^ "Perforce Knowledge Base: Internationalization and Localization". Kb.perforce.com. 2010-10-21. Retrieved 2014-01-26. 
  27. ^ "Perforce Knowledge Base: Internationalization and Localization". Kb.perforce.com. 2010-10-21. Retrieved 2014-01-26. 
  28. ^ [5] - Seapine Software Releases Surround SCM 2009
  29. ^ Signature - SVK Wiki
  30. ^ "GitCentric | AccuRevGit for the Enterprise". Accurev.com. Retrieved 2014-01-26. 
  31. ^ "Bazaar keywords plugin". Wiki.bazaar.canonical.com. 2005-09-05. Retrieved 2014-01-26. 
  32. ^ "Bazaar interactive plugin". Launchpad.net. Retrieved 2014-01-26. 
  33. ^ "Bazaar Externals plugin". Launchpad.net. Retrieved 2014-01-26. 
  34. ^ "Ignore merge operation for given extension". 
  35. ^ "bzr-svn". Launchpad.net. Retrieved 2014-01-26. 
  36. ^ "bzr-git". Launchpad.net. Retrieved 2014-01-26. 
  37. ^ "bzr-hg". Launchpad.net. Retrieved 2014-01-26. 
  38. ^ IBM Rational ClearCase: The ten best triggers from IBM DeveloperWorks
  39. ^ The manifest, Fossil file formats
  40. ^ "Fossil import and export". Fossil-scm.org. 2014-01-22. Retrieved 2014-01-26. 
  41. ^ "git-submodule(1) Manual Page". Kernel.org. 2013-02-15. Retrieved 2014-01-26. 
  42. ^ "Mercurial KeywordExtension page". Selenic.com. Retrieved 2014-01-26. 
  43. ^ "Mercurial RecordExtension page". Selenic.com. 2013-08-27. Retrieved 2014-01-26. 
  44. ^ "hgforest repository". Bitbucket.org. Retrieved 2014-01-26. 
  45. ^ "Subrepository - Mercurial". Mercurial.selenic.com. 2013-09-03. Retrieved 2014-01-26. 
  46. ^ "Mercurial Timestamp Extension". Mercurial.selenic.com. 2012-04-24. Retrieved 2014-01-26. 
  47. ^ "hgsubversion page". Selenic.com. 2013-08-28. Retrieved 2014-01-26. 
  48. ^ "Hg-Git Mercurial Plugin". Hg-git.github.com. Retrieved 2014-01-26. 
  49. ^ "Mercurial ConvertExtension page". Selenic.com. 2013-11-29. Retrieved 2014-01-26. 
  50. ^ "Keyword Substitution". Svnbook.red-bean.com. Retrieved 2014-01-26. 
  51. ^ "Externals Definitions". Svnbook.red-bean.com. Retrieved 2014-01-26. 
  52. ^ "Mercurial rebase extension project's page". Selenic.com. 2012-10-25. Retrieved 2014-01-26. 
  53. ^ "bug 6463 - enh: search repository". Retrieved 8 May 2012. 
  54. ^ "Mercurial Shelve extension page". Selenic.com. 2013-11-07. Retrieved 2014-01-26. 
  55. ^ "graft -core command (since Hg Rev.2.0)". Selenic.com. Retrieved 2014-01-26. 
  56. ^ "Mercurial Transplant extension page". Selenic.com. 2012-05-12. Retrieved 2014-01-26. 
  57. ^ "Mercurial Record extension page". Mercurial.selenic.com. 2013-08-27. Retrieved 2014-01-26. 
  58. ^ "The Perforce Broker". Perforce.com. Retrieved 2014-01-26. 
  59. ^ "Perforce Knowledge Base: "Cherry Picking" Integrations". Kb.perforce.com. 1990-01-01. Retrieved 2014-01-26. 
  60. ^ "Supported Integrations — PTC Integrity". Mks.com. 2012-09-10. Retrieved 2014-01-26. 
  61. ^ "MercurialVersionControl - NetBeans Wiki". Wiki.netbeans.org. Retrieved 2014-01-26. 
  62. ^ "Sergant's Home Page". Newsupaplex.pp.ru. Retrieved 2014-01-26. 
  63. ^ La Chose : web agency and software maker – agence web et développement de logiciels
  64. ^ "When SCM meets Web 2.0 – Cool Widget at Orbitz | Software Configuration Management and Agile Software Development". Accurev.com. Retrieved 2014-01-26. 
  65. ^ "McAfee Web Services Team Saves $500,000 per Year by Adopting". AccuRev. Retrieved 2014-01-26. 
  66. ^ "SanDisk Gains a Competitive Advantage Using AccuRev SCM Software". AccuRev. Retrieved 2014-01-26. 
  67. ^ "Symantec Achieves Significant Gains by Moving to". AccuRev. Retrieved 2014-01-26. 
  68. ^ "Webinar - How Verizon Wireless Overcame Obstacles to Deliver Software More Quickly". Accurev.com. 2011-06-01. Retrieved 2014-01-26. 
  69. ^ "WhoUsesBzr - wiki.bazaar.canonical.com". Bazaar-vcs.org. 2005-09-21. Retrieved 2014-01-26. 
  70. ^ "The Scalable Distributed Software Configuration Management System". BitKeeper. Retrieved 2014-01-26. 
  71. ^ "Distributed Source Control System". Portal.acm.org. 1997-05-18. Retrieved 2014-01-26. 
  72. ^ "How to Set up a Source Control on Windows without spending a dime.". AnandTech. Retrieved 8 May 2012. 
  73. ^ "Combining a tag which contains all files with a tag which only contains a subset". Retrieved 8 May 2012. 
  74. ^ "Can no no longer connect to CVSNT from unix clients". 
  75. ^ "gserver client errors". Retrieved 8 May 2012. 
  76. ^ a b Towards A Better SCM: Revlogs and Mercurial, presented by Matt Mackall to the Ottawa Linux Symposium, July 2006
  77. ^ "Getting and Working With the Perl Source". dev.perl.org. Retrieved 2014-01-26. 
  78. ^ "Git". MediaWiki. Retrieved 1 August 2012. 
  79. ^ IC Manage: Industrial Strength Data Management
  80. ^ "PTC Sets New Standard for Managing Hardware and Software Development Lifecycles with MKS Integrity Acquisition — PTC Integrity". Mks.com. Retrieved 2014-01-26. 
  81. ^ "Customers — PTC Integrity". Mks.com. Retrieved 2014-01-26. 
  82. ^ "transition ongoing". Python.org. Retrieved 2014-01-26. 
  83. ^ http://www.venge.net/monotone/wiki/ProjectsUsingMonotone
  84. ^ http://www.perforce.com/perforce/customers.html
  85. ^ Perforce in FreeBSD Development
  86. ^ http://www.perforce.com/perforce/conferences/eu/2010/Presentations/Geoff_Mendal-Strategic_Plan.paper.pdf
  87. ^ Starteam®
  88. ^ Customer Profiles
  89. ^ http://subversion.tigris.org/testimonials.html

External links[edit]