There are many version control systems (VCS) in the world. Some are centralized (for instance, Subversion), where software developers use a single shared repository. Others are decentralized (for instance, Mercurial and Git), where a full copy of a repository is stored on each developer’s machine.
Centralized or decentralized, all version control systems were developed to help software teams work on tasks together in more effective ways. With this research, we aim to shed the light on how major version control systems stack against each other in 2016.
Let’s focus on four established version control systems: Git,
Mercurial, Subversion (SVN), and Perforce.
Given a
choice, which one would you use for a new project in 2016?
What is your #versioncontrol of choice in 2016?
— RhodeCode (@rhodecode) July 18, 2016
Vote and share, then check the Insights:https://t.co/8orE3ly4dU
Vote and tweet the poll above :) Let’s see which version control systems people are interested in 2016.
Last year’s Stack Overflow Developer Survey provided a rating of VCSs by frequency of use. We picked 5 of them for our investigation.
Turning to Google Trends data is a one way to determine a VCS popularity. Google Trends tool allows to compare how many times a particular version control system was searched (i.e., its popularity in Google) relative to the total search volume in the world.
Data Source: Google Trends, 2004-present (www.google.com/trends).
Note: numbers represent search interest relative to the highest point on the chart. This doesn't convey absolute search volume.
Considering the graph above, it becomes clear that Git is the most popular version control system in 2016. That’s not by chance, as its search interest rank has been constantly heading upward since 2004. Git-related searches overtook the searches for Mercurial and CVS in 2007 and surpassed Apache Subversion (SVN) in 2012. SVN has been declining since 2009 with that downtrend sustained in 2016. Perforce seems to sustain a loyal but small share of interest.
Search interest for the term is shown as a ranked scale (1 to 100), with the rankings being normalized so that they are comparable to each other. The most recent data available is for June 2016:
In 2016 there were 2.4 times more searches around Git than for all the other systems combined (94 vs 39 respectively):
Were there only 5 version control systems on the planet in 2016, that is how their shares of search interest would stack up across the whole VCS market:
To sum this up:
Git is the most popular version control
system in 2016. It enjoys its hefty 70% of all the search
interest among these five VCSs.
Mercurial, with its 13.5% share, is still a
tool of choice for companies like Facebook, Mozilla, Nginx,
and NetBeans.
Subversion (SVN) has 13.5% share as well,
still used by some of the largest companies all over the
world, such as Backblaze, FreeBSD, Mono, and SourceForge.
Perforce has gained only 1.5% interest in
2016. It has been widely used by Google, until they built
their own VCS called Piper in 2015.
Concurrent Version Systems has the smallest
share of (0.8%) in 2016, even though many IDEs have built-in
CVS support: Eclipse, Emacs, NetBeans, PyCharm, and others.
The fact that Git remains the leading VCS in 2016 is no surprise. If we refer to the overall search interest for these 5 version control systems, the search interest for Git has been growing constantly over time.
The more popular a technology is, the more frequently the questions about it may appear on Stack Overflow. Every 8 seconds or so, professional or enthusiast developers ask a question on Stack Overflow. Those questions are conveniently tagged according to the technology they relate. If we took a retrospective look at the questions about version control systems for the last 8 years, we’ll notice that Git has remained the most topical version control system of Stack Overflow for a long time:
Indeed, Git has the greatest number of questions in 2016 on Stack Overflow as well. More than 20,000. were devoted to Git which is around 87% of all the questions asked about the 5 version control systems in place.
Another VCS which people frequently ask about is Subversion. It has 2,214 questions (9%) among the VCSs in study. The rest of the questions about Mercurial, Perforce, and CVS make 1,004 (4% of the total). Since 2010, developers have started to have more discussions about Git than about Subversion or any other VCS system we researched. Mercurial, CVS, and Perforce seem to always take a stand on the sidelines.
This is also reflected by the overall distribution of the VCS-related questions:
Git has the greatest total number of discussions; more than 70,000 questions were asked. It is followed by SVN, having more than 20,000 questions. Mercurial, CVS, and Perforce wrap up the list having not more than 10,000 of queries altogether.
The data from Stack Overflow confirms once more; Git is the most popular version control system, followed by SVN. Perforce, CVS, and Mercurial keep their niches.
To verify the popularity trends among the version control systems, we researched the data in Google Trends and Stack Overflow. Let’s now turn to another source: Eclipse Community Survey.
For five years (2009-2014), Eclipse Community tried to reveal the usage of various version control systems among its developers. In their annual community surveys, they asked the respondents about the primary source code management system used the most in their projects.
From these surveys, the upward trend of Git and the downward trend of Subversion (SVN) can be observed very clearly. In 2014 where Git finally surpassed SVN and became the VCS of choice among developers of Eclipse Community.
It is worth mentioning that Git was the system of highest interest in 2010-2012, yet its wide adoption by developers happened a few years later. Git became the most-used source code management system by Eclipse Community respondents in 2014. Google Trends and Stack Overflow data reflect the interest dynamics for a technology. According to the data, Git overtook Subversion (SVN) in 2010 (Stack Overflow) or 2012 (Google Trends). While the interest may have peaked during these years, the actual shift in adoption of the technology between Git and SVN (when people started widely using it) has happened only in 2014 (Eclipse Community Survey).
That may be explained by the fact that there is always a lag between the availability of a technology or system and its adoption.
RhodeCode is an enterprise source code management platform. Whether you use Git, Mercurial or Subversion, you will have a unified repository management within the organization. No forced migration from one VCS to another, but common authentication, unified code review tools, APIs, integrations, and permission controls, simultaneous across all your repositories.
Installable version of behind-the-firewall RhodeCode. Supports all Linux platforms.
RhodeCode CE Free and open source, supported by the community.
RhodeCode EE with additional Enterprise features and our Technical Support with SLA.
Free or 30 Day Trial
Hosted Instance of RhodeCode EE
+ All Enterprise features.
+ Dedicated hardware with SSL and SSH support.
+ Unlimited repository size.
+ Custom domain.
+ Technical Support with SLA.
30 Day Trial
Large and growing software development teams all over the world rely on RhodeCode for unified management of their secure, behind-the-firewall repositories, where conventional repository management tools are simply not enough. Let’s talk!
Reach the core team on the
Community Portal
or join us on
Slack!
For sales inquiries and quotes, please contact the sales team at
sales@rhodecode.com
Source code is available on the platform itself:
rhodecode.com/open-source
(contributors are welcome).