FREEDOM251

Freedom251 › Version Control Software

Mercurial

Free plan LinuxMacSelf-hostedWindows

Visit Mercurial Alternatives Pricing

Mercurial's own site

What Mercurial is

Mercurial is free distributed source control software for managing changes to development projects. Each developer keeps a complete local copy of a project’s history, so work can continue without a network connection or central server. The distributed model suits teams that want developers to work independently and later share changes. Mercurial is designed for projects of any size, with fast diffs, commits, branches, and merges. It runs on Windows, macOS, and Linux, and binary releases are also available for Solaris 11 Express and other platforms. Installation instructions cover system packages, winget on Windows, Homebrew, PyPI tools, and source builds. The software is open source under the GNU General Public License version 2 or later. Python extensions can add commands, modify existing commands, and access core functions. Official extensions connect Mercurial with tools and workflows such as Bugzilla hooks, Git command mapping, email notifications, and external diff programs. It also supports sparse checkout and nested repositories; large-file handling is available through an extension. The acl extension can control write access to branches and paths when changesets arrive. Mercurial is coordinated by community committers and reviewers under a steering committee, with help available through Matrix, IRC, and its mailing list.

Who it suits

Mercurial suits developers and teams who want distributed version control and the ability to work from a full local project history. It is also relevant to users seeking an open source tool with Python extensions, sparse checkout, nested repositories, and self-hosted deployment.

What it does well

  • Developers can work from complete local project histories.
  • Supports fast diffs, commits, branching, and merging.
  • Python extensions can add or modify commands.
  • Available for Windows, macOS, Linux, and self-hosted use.
  • Sparse checkout and nested repositories are supported.

What to know first

  • Large-file handling requires an extension.
  • Git subrepositories are disabled by default because of a documented clone-time code-execution risk.

Limits

Large-file handling is provided through an extension. Git subrepositories are disabled by default; the documentation warns that carefully constructed ones can enable code execution during cloning.

Plans

PlanBilled and limitsPrice
Mercurialfree software · GNU GPL version 2 or laterFree

As mercurial-scm.org lists them, read 30 Sept 2026. The maker's own page has the final word.

Getting started

  1. Open the Mercurial website.
  2. Choose an installation route from the official instructions, such as a system package, winget, Homebrew, PyPI tool, or source build.
  3. Install Mercurial on Windows, macOS, Linux, or another supported platform.
  4. Use Mercurial locally or with a self-hosted deployment.

Verdict

Choose Mercurial if you want free, open source distributed source control that lets developers work without a central server. Its extension system and broad installation options give teams room to adapt it. Review the documented Git subrepository security limitation if your workflow involves those repositories.

Questions

Is Mercurial free?

Yes. The free plan costs nothing and is licensed under the GNU GPL version 2 or later.

Which platforms does Mercurial support?

Desktop platforms include Windows, macOS, and Linux. Binary releases are also available for Solaris 11 Express and other platforms.

Is Mercurial open source?

Yes. It is licensed under the GNU General Public License version 2 or any later version.

Can Mercurial be self-hosted?

Yes, self-hosted deployment is supported.

What integrations are available?

Official extensions include Bugzilla hooks, Git command mapping, Git fast-export, email notifications, and external diff tools.

How does Mercurial handle large files?

Large-file handling is available through an extension.

Facts from Mercurial's own pages

Access control
The acl extension allows or denies write access to branches and paths when receiving incoming changesets. · mercurial-scm.org, 30 Sept 2026
Community support
Users can get help through the Matrix channel, IRC and the general Mercurial mailing list. · mercurial-scm.org, 30 Sept 2026
Distributed architecture
Each developer has a local copy of the entire development history and can work independently of network access or a central server. · mercurial-scm.org, 30 Sept 2026
Extensibility
Python extensions can add commands, change existing commands and access Mercurial core functionality. · mercurial-scm.org, 30 Sept 2026
Installation methods
Official installation instructions cover system packages, Windows winget, Homebrew, PyPI tools and source builds. · mercurial-scm.org, 30 Sept 2026
Integrations
Official extensions include Bugzilla hooks, Git command mapping, Git fast-export, email notifications and external diff tools. · mercurial-scm.org, 30 Sept 2026
Open source license
Mercurial is licensed under the GNU General Public License version 2 or any later version. · mercurial-scm.org, 30 Sept 2026
Origin
Work on Mercurial began in April 2005 with a goal of efficiently managing Linux-sized trees. · mercurial-scm.org, 30 Sept 2026
Performance
Mercurial is designed to handle projects of any size with fast diffs, commits, branching and merging. · mercurial-scm.org, 30 Sept 2026
Product type
Mercurial is a free, distributed source control management tool. · mercurial-scm.org, 30 Sept 2026
Project governance
The Mercurial project is run by its community and coordinated by committers and reviewers under a steering committee. · mercurial-scm.org, 30 Sept 2026
Security limitation
Mercurial documentation warns that auditing is insufficient to prevent clone-time code execution through carefully constructed Git subrepositories, which are disabled by default. · mercurial-scm.org, 30 Sept 2026
Security reporting
The project provides a moderated mercurial-security mailing list for private security discussion and reporting. · mercurial-scm.org, 30 Sept 2026
Supported systems
Binary releases are available for Microsoft Windows, GNU/Linux, macOS, Solaris 11 Express and other platforms. · mercurial-scm.org, 30 Sept 2026

Where Mercurial stands on Freedom251

Look at these too