Alternatives#
Git won the format war, but other VCSes are alive and well, often addressing one of Git’s specific weaknesses better than Git does.
Top 20 VCS Tools#
The systems an operator runs into in the field, ordered roughly by relevance in 2026. Modern distributed first, then mainstream centralised, then legacy. “DVCS” is distributed, “CVCS” centralised.
# |
Tool |
Model |
Status |
Niche |
|---|---|---|---|---|
1 |
Git |
DVCS |
active |
The default. Backs every other entry in this list as a comparison point. |
2 |
Mercurial ( |
DVCS |
active |
Long-standing Git peer. Friendlier CLI; Heptapod hosting. |
3 |
Sapling |
DVCS |
active |
Meta’s open-source VCS. Mercurial-compatible CLI, very large monorepos. |
4 |
Jujutsu ( |
DVCS |
active |
Modern frontend over Git or its own backend. First-class operation log; simpler conflict model. |
5 |
Fossil |
DVCS |
active |
Single-binary VCS plus bug tracker plus wiki plus forum. Powers SQLite. |
6 |
Pijul |
DVCS |
active |
Theory of patches without Darcs’ performance issues. Explicit commutative conflicts. |
7 |
Subversion (SVN) |
CVCS |
active (Apache) |
The classic centralised VCS. Long-lived enterprise estates and many open-source foundations. |
8 |
Perforce (Helix Core) |
CVCS |
commercial |
Game studios, EDA, anything with very large binary assets. Streams, exclusive locks. |
9 |
Plastic SCM / Unity VC |
DVCS / CVCS hybrid |
commercial |
Game-industry-oriented. Visual branch tool, semantic merge. |
10 |
AccuRev |
CVCS (stream-based) |
commercial |
Stream hierarchy model. Mostly legacy enterprise. |
11 |
ClearCase (IBM Rational) |
CVCS |
commercial / legacy |
Long-running enterprise estates. MVFS dynamic views. |
12 |
CVS |
CVCS |
legacy |
The grandfather of modern VCS. Still present where the migration budget never arrived. |
13 |
RCS |
file-local |
legacy |
Per-file revisions. Lives on in |
14 |
SCCS |
file-local |
legacy |
Predates RCS. Surviving on Solaris-derived systems. |
15 |
Bazaar ( |
DVCS |
dormant |
Ubuntu and Launchpad’s original VCS. Breezy is the Python-3 fork. |
16 |
Darcs |
DVCS (patch theory) |
dormant |
Haskell-community VCS. Pijul is its spiritual successor. |
17 |
Monotone |
DVCS |
legacy |
The first content-addressable DVCS. Influenced Git’s design. |
18 |
BitKeeper |
DVCS |
legacy (open-source) |
Hosted the Linux kernel before Git. Open-sourced in 2016, archived shortly after. |
19 |
Visual SourceSafe (VSS) |
CVCS |
legacy |
Pre-Git Microsoft VCS. Long-running .NET estates. |
20 |
PVCS (Serena / Micro Focus) |
CVCS |
legacy |
Enterprise change management on long-tail mainframe-adjacent systems. |
Sections below cover the active, operator-relevant entries in more depth.
Mercurial (hg)#
Mercurial was Git’s main competitor in the late 2000s, distributed, with a similar feature set and a friendlier CLI by most accounts. Less ecosystem in 2026 than Git but professionally maintained, and a fine pick for teams that prefer it.
Used by Mozilla and Facebook (now mostly migrated/forked).
Strong on extensibility (Python extensions).
Hosted on Heptapod and self-hostable.
Less ecosystem in 2026 than Git, but professionally maintained and a fine choice for teams that prefer it.
Sapling#
Sapling, Meta’s open-source Git alternative, derived from a long fork of Mercurial. Designed for very large monorepos, with stacked-diff review as a first-class workflow. Reads existing Git repositories transparently, so adopting Sapling doesn’t require moving the repo.
Designed for very large monorepos.
“Stacked diffs” workflow, commits as units of review, not branches.
Reads existing Git repositories.
If you’ve felt Git is awkward for stacked changes, Sapling is the most polished take on the alternative.
Jujutsu (jj)#
Jujutsu, a newer VCS with some novel ideas. Increasingly popular among power users in 2026 because it works on top of any existing Git repo, so the cost of trying it is essentially zero. The features below distinguish it from Git.
All edits create new commits automatically; the working copy is a commit.
No staging area / index.
Fully native conflict-resolution as part of history.
Reads and writes Git repositories transparently; you can use
jjon top of any existing Git project.
Increasingly popular among power users in 2026; a thoughtful rethink of the model with a low cost to try.
Pijul#
Pijul, patch-based VCS with a sound mathematical foundation. Patches commute, so the order they’re applied doesn’t matter for many merges that Git struggles with. Smaller community and less tooling than Git, but genuinely interesting if you’ve felt Git’s snapshot model rub on long-lived parallel branches.
Patches commute, order-independence makes some merges painless that Git struggles with.
Smaller community; less tooling.
Interesting if you’ve felt the pain of Git’s snapshot-based history on long-lived parallel branches.
Fossil#
Fossil, a self-contained VCS plus bug tracker, wiki, and forum, all in a single SQLite-backed binary. Built and used by SQLite itself; deploys as a single executable; works well for small projects that want everything under one roof without a separate hosting platform.
Serves a built-in web UI.
Used by SQLite itself (Fossil was created by D. Richard Hipp).
Deploys as a single executable; works well for small projects that want everything in one place.
Perforce / Helix Core#
Perforce / Helix Core, the dominant centralized VCS in industries where Git struggles with binary assets and very large monorepos. Centralized rather than distributed, with file locking, exclusive checkouts, and content-addressable depot storage. Common in.
Game development (artists / large binary assets, very large monorepos).
Hardware design.
Some enterprise codebases.
Centralized rather than distributed; designed for repositories far larger than Git handles natively. Pairs with file locking, exclusive checkouts, and content-addressable depot storage.
For game studios, Perforce is still the default rather than the exception.
Subversion (svn)#
Apache Subversion – centralized, predates the distributed era. Mature, conservative, still maintained. Encountered in long-lived enterprise projects, FOSS projects with pre-Git history, and large media-asset repositories where atomic commits across the repo were once a major differentiator.
Encountered in long-lived enterprise projects, FOSS projects with pre-Git history, large media-asset repositories.
Atomic commits across the repo were once a differentiator.
git svn bridges the two if you need to live in both worlds.
Specialized#
The remaining VCSes operators occasionally meet. Most are historical or niche. Bazaar and CVS predate Git’s dominance; Plastic SCM and git-annex address specific pain points (game studios, very large binaries) that Git’s defaults don’t handle well.
Bazaar (bzr), Standard’s VCS; mostly historical now.
CVS, pre-SVN; if you encounter it, the project is asking for a migration.
Plastic SCM / Unity Version Control, alternative for game studios.
Boar / Annex / git-annex, for repositories of large binary files.
Choosing#
Default: Git. Almost every tool, host, library, and tutorial assumes it. The ecosystem’s gravity is overwhelming and growing. The cases below are where the alternatives genuinely earn their keep. Everywhere else, Git plus a good hosting platform plus disciplined workflows beats every alternative.
Game / VFX studio, Perforce / Helix Core is more often the right answer than Git LFS.
Very large monorepo, Sapling, or Git with virtual-filesystem / partial-clone tooling (VFSForGit).
Stacked-diff workflow, Sapling or Jujutsu.
Self-contained project, Fossil.
You enjoy patch theory, Pijul.
For everything else, Git plus a good hosting platform plus disciplined workflows beats every alternative.