
Mercurial
Mercurial is free, distributed source control software for managing versioned projects.
What Mercurial is
Mercurial is free, distributed source control software for managing versioned projects. Each developer keeps a local copy of the full development history, so work can continue without a network connection or central server. It is designed for projects of any size and supports diffs, commits, branching, and merging. Mercurial runs on Windows, macOS, and Linux, with binary releases also listed for Solaris 11 Express and other platforms. Installation instructions cover system packages, Windows winget, Homebrew, PyPI tools, and source builds. Python extensions can add or change commands and access core functionality; official extensions include Git command mapping, email notifications, and external diff tools. Mercurial is licensed under the GNU GPL version 2 or later. It supports sparse checkout and nested repositories, while large-file handling is available through an extension. Its documentation warns of a clone-time code-execution risk involving carefully constructed Git subrepositories, which are disabled by default.
Good
- Developers keep a local copy of full project history.
- Work can continue without a network connection.
- Supports branching, merging, commits, and diffs.
- Python extensions can add or change commands.
- Available for Windows, macOS, and Linux.
Watch out
- Large-file handling requires an extension.
- Carefully constructed Git subrepositories pose a clone-time risk.
- Git subrepositories are disabled by default.
Who it suits
Mercurial suits developers who want distributed version control and the ability to work with project history without a central server. Its extensions may appeal to teams that want to tailor commands or use supporting integrations.
Verdict
Mercurial provides a distributed workflow with broad platform availability and extension support. Its documented subrepository security limitation is worth understanding, and large-file handling depends on an extension.
Plans and prices
From Mercurial's own pricing page, checked 30 Sep 2026.
| Plan | Price | What it gives you |
|---|---|---|
| Mercurial | Free | free software · GNU GPL version 2 or later |
The facts
Each one read from Mercurial's own pages, with the date it was checked.
What it does
- Access control
- The acl extension allows or denies write access to branches and paths when receiving incoming changesets.checked 30 Sep 2026
- Community support
- Users can get help through the Matrix channel, IRC and the general Mercurial mailing list.checked 30 Sep 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.checked 30 Sep 2026
- Extensibility
- Python extensions can add commands, change existing commands and access Mercurial core functionality.checked 30 Sep 2026
- Installation methods
- Official installation instructions cover system packages, Windows winget, Homebrew, PyPI tools and source builds.checked 30 Sep 2026
- Integrations
- Official extensions include Bugzilla hooks, Git command mapping, Git fast-export, email notifications and external diff tools.checked 30 Sep 2026
- Open source license
- Mercurial is licensed under the GNU General Public License version 2 or any later version.checked 30 Sep 2026
- Origin
- Work on Mercurial began in April 2005 with a goal of efficiently managing Linux-sized trees.checked 30 Sep 2026
- Performance
- Mercurial is designed to handle projects of any size with fast diffs, commits, branching and merging.checked 30 Sep 2026
- Product type
- Mercurial is a free, distributed source control management tool.checked 30 Sep 2026
- Project governance
- The Mercurial project is run by its community and coordinated by committers and reviewers under a steering committee.checked 30 Sep 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.checked 30 Sep 2026
- Security reporting
- The project provides a moderated mercurial-security mailing list for private security discussion and reporting.checked 30 Sep 2026
- Supported systems
- Binary releases are available for Microsoft Windows, GNU/Linux, macOS, Solaris 11 Express and other platforms.checked 30 Sep 2026
Alternatives to Mercurial
- 1

Unity
Free planAndroidiOSWebAPI8.4Free plan - 2

Unity Version Control
Free planWebAPILinuxmacOS8.1Free plan - 3

Perforce P4 (Helix Core)
Free planWebAPILinuxmacOS7.9From $39 a month - 4

Diversion
Free planWebAPILinuxmacOS7.8From $25 a month - 5

GitHub CodeQL
Free planWebExtensionLinuxmacOS7.5From $30 a month - 6
GitUI
Free planOpen sourceAndroidLinuxmacOSSelf-hosted7.5Free plan
