Skip to content
SPECIFICTION
Get listed

Darcs vs Mercurial

Darcs

darcs.net

Mercurial

mercurial-scm.org

Side by side

FigureDarcsMercurial
Price fromFreeFree
Free planYesYes
Free trial——
Open source——
WindowsYesYes
macOSYesYes
LinuxYesYes
Self-hostedYesYes
Plans published11
Spec score · Version Control Software8.8 (#3)7.7 (#35)
Community supportThe project lists mailing lists, an IRC channel, a bug tracker, Reddit, Stack Overflow, and a Trello board as community resources.Users can get help through the Matrix channel, IRC and the general Mercurial mailing list.

Plans

Darcs

  • DarcsFree

Darcs pricing →

Mercurial

  • MercurialFree

Mercurial pricing →

In their own words

Darcs

Darcs is a free, open-source version control system for Linux, macOS, Windows, and self-hosted deployment. It organizes work around patches, or changes, instead of snapshots. Every working directory is its own repository, allowing users to record changes offline and push them to another repository later. Interactive commands let users select changes for a patch, pull individual changes, and edit or discard a patch before sending it. Branching works by pushing and pulling between repositories, with each repository treated as a branch. The darcs send command supports email collaboration, so maintainers can accept or reject proposed patches without granting commit privileges. The project names hub.darcs.net and darcsweb for repository hosting. Darcs is written in Haskell and can be installed through Cabal, Stack, Nix, platform binaries, or a source tarball. It is volunteer-run and a Software Freedom Conservancy member.

Visit darcs.net

Mercurial

Mercurial is a free, distributed source control system for managing development history. Each developer keeps a full local copy of that 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. The software runs on Windows, macOS, and Linux; binary releases are also listed for Solaris 11 Express and other platforms. Installation options include system packages, Windows winget, Homebrew, PyPI tools, and source builds. Python extensions can add or change commands and access core functionality. Official extensions cover tasks such as Git command mapping, email notifications, and external diff tools. Mercurial supports sparse checkout and nested repositories; large-file handling is available through an extension. It is licensed under the GNU GPL version 2 or later. One security caveat: carefully constructed Git subrepositories can pose a clone-time code-execution risk, so they are disabled by default.

Visit mercurial-scm.org