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 (hg)

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 (jj)

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 etc-rcs config-history workflows.

14

SCCS

file-local

legacy

Predates RCS. Surviving on Solaris-derived systems.

15

Bazaar (bzr) / Breezy

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 jj on 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.