Darcs
Darcs is a free and open-source version control system for Windows, macOS, Linux, and self-hosted use.
What Darcs is
Darcs is a free and open-source version control system for Windows, macOS, Linux, and self-hosted use. It organizes work around patches—individual changes—rather than snapshots. Each working directory is a repository, so users can record changes offline and push them to another repository later. Interactive commands let users select changes for a patch, and patches can be modified or discarded before sending. Branching is handled by pushing and pulling between repositories. Contributors can email proposed patches with the darcs send command, allowing maintainers to accept or reject them without granting commit privileges. The project names hub.darcs.net and darcsweb as hosting and sharing options. Darcs is written in Haskell, and installation routes include Cabal, Stack, Nix, platform binaries, and a source tarball. The project is volunteer-run and a member of the Software Freedom Conservancy. Its stated constraints include no local branches, no Git-style staging index, no file-permission versioning, and performance problems in some areas.
Good
- Free and open source.
- Repositories support recording changes offline.
- Interactive commands select changes for patches.
- Email proposals can be reviewed without commit privileges.
Watch out
- Does not support local branches.
- Does not version file permissions.
- Performance remains poor in some areas.
- No large-file handling.
Who it suits
Darcs suits contributors who want distributed, offline work and patch-based collaboration, including email review without commit access. Teams needing local branches or file-permission versioning should consider its stated limitations.
Verdict
Darcs offers a patch-centered workflow with offline repositories and email-based contribution review. Its missing local branches, file-permission tracking, and large-file handling may rule it out for some projects.
Plans and prices
From Darcs's own pricing page, checked 8 Oct 2026.
| Plan | Price | What it gives you |
|---|---|---|
| Darcs | Free | Free and open-source version control system |
The facts
Each one read from Darcs's own pages, with the date it was checked.
What it does
- Branching and merging
- Darcs treats every repository as a branch, with branching handled by pushing and pulling between repositories.checked 8 Oct 2026
- Collaboration
- Users can send proposed patches by email for maintainers to accept or reject, without needing commit privileges.checked 8 Oct 2026
- Community support
- The project lists mailing lists, an IRC channel, a bug tracker, Reddit, Stack Overflow, and a Trello board as community resources.checked 8 Oct 2026
- Distributed and offline
- Each working directory is a repository, so users can record changes offline and push them to a remote repository later.checked 8 Oct 2026
- Downloads
- The download page lists Windows, Intel Mac OS X, GNU/Linux, OpenBSD, and FreeBSD, while noting that the listed binaries may be older than the current stable release.checked 8 Oct 2026
- Email collaboration
- The darcs send command lets contributors send patches by email for maintainers to accept or reject without requiring commit privileges.checked 8 Oct 2026
- File permission limitation
- The FAQ says Darcs does not version file permissions and warns that this makes it unsafe for versioning many files in /etc.checked 8 Oct 2026
- Hosting
- The features page names hub.darcs.net and darcsweb as options for hosting and sharing repositories.checked 8 Oct 2026
- Installation
- The front page lists installation through Cabal, Stack, Nix, platform binaries, and a source tarball.checked 8 Oct 2026
- Intended users
- The features page describes workflows for offline work, patch-based collaboration, parallel development, and cherry-picking changes.checked 8 Oct 2026
- Interactive changes
- Users can interactively choose which changes to include in a patch, and push and pull operations offer similar interaction.checked 8 Oct 2026
- Languages and tooling
- Darcs is written in Haskell, and the homepage lists installation through cabal, Stack, and Nix.checked 8 Oct 2026
- Local branches
- The comparison page says Darcs does not yet support local branches.checked 8 Oct 2026
- Offline work
- Darcs repositories work independently, so users can record changes offline and push them to a public repository later.checked 8 Oct 2026
- Patch editing
- Users can modify patches before sending them to a remote repository or discard them and start over.checked 8 Oct 2026
- Performance limitation
- The FAQ says Darcs performance is still bad in many areas, though it is improving.checked 8 Oct 2026
- Product
- Darcs is a free and open source, cross-platform version control system that focuses on changes rather than snapshots.checked 8 Oct 2026
- Project organization
- Darcs describes itself as a volunteer-run project and a member of the US tax-exempt Software Freedom Conservancy.checked 8 Oct 2026
- Security
- The download page provides checksums alongside the listed Windows and Intel Mac binaries.checked 8 Oct 2026
- Security and compliance
- The official pages opened describe Darcs as free and open source and note project membership in the Software Freedom Conservancy; they do not state a security certification or compliance program.checked 8 Oct 2026
- Selective changes
- Interactive commands let users choose which changes to include in a patch, and users can pull individual changes from another repository.checked 8 Oct 2026
- Support
- The FAQ directs unanswered questions to the darcs-users mailing list or the #darcs IRC channel.checked 8 Oct 2026
- Version control limitation
- The comparison page says Darcs does not yet support local branches and does not use a Git-style staging index.checked 8 Oct 2026
Where it runs
- Platforms
- The download page lists binaries for Windows and Intel Mac OS X, with Linux and BSD distribution packages or source-build instructions also described.checked 8 Oct 2026
The full review of Darcs
Overview
Darcs is a free, open-source version control system for developers who prefer exchanging individual changes over coordinating around snapshots. It is most compelling for contributors who work offline, select patches carefully, or submit work by email; teams built around local branches or file permission history should look elsewhere.
Key features
Every working directory is a repository, so work can be recorded without a network connection and pushed to a remote repository later. Darcs handles branches through separate repositories and pushes and pulls between them. That makes independent and parallel work possible, but it requires a different mental model from creating local branches and does not provide the latter.
Interactive commands let contributors choose which changes belong in a patch and pull individual changes from another repository. Patches can also be edited before they are sent or discarded and recreated. This control suits careful cherry-picking and focused contributions, though developers who depend on a Git-style staging index will find that familiar step missing.
With darcs send, contributors can email proposed patches to maintainers, who can accept or reject them without giving the contributor commit privileges. That is a useful route for occasional or external contributors. Darcs also names hub.darcs.net and darcsweb as repository hosting and sharing options.
Performance remains a practical concern: the project says it is still poor in many areas, even as it improves. Darcs also does not track file permissions, which makes it unsuitable for versioning many files in /etc. Large-file handling is absent, and sparse checkout and nested repositories are unsupported. These gaps narrow its usefulness for projects with large assets, complex repository layouts, or system configuration files.
Pricing
Darcs costs free. The free plan is the free and open-source version control system itself, with distributed repositories and self-hosted deployment. There is no free trial because no paid plan is needed to use Darcs.
Platforms
Darcs supports Windows, macOS, and Linux, and can be self-hosted. The project also lists OpenBSD and FreeBSD downloads. Installation options include Cabal, Stack, Nix, platform binaries, and a source tarball; the project cautions that listed binaries may lag behind the current stable release.
Who it's for
Darcs is a sound choice for developers who want offline repositories, patch-by-patch control, and email-based contribution review. It fits volunteer and distributed projects where contributors need to propose changes without repository write access. It is a weaker choice for teams that need local branches, file-permission tracking, large-file support, or strong performance across demanding workloads.
Pros and cons
- Pro: Offline repositories let contributors record work independently and publish it later.
- Pro: Interactive patch selection and editing give contributors control over exactly what they share.
- Pro: Email submissions allow maintainers to review patches without granting commit privileges.
- Con: No local branches or staging index may disrupt workflows built around those concepts.
- Con: Missing file-permission tracking rules it out for many system configuration files.
- Con: No large-file handling, sparse checkout, or nested repositories limits its fit for some project structures.
- Con: Performance is still poor in many areas, according to the project.
Alternatives
Consider Diversion if its free and freemium plans suit your project; its Education plan is free for up to 10 users, subject to institutional eligibility.
Unity Version Control is another option with a free tier offering unlimited cloud seats and 25 GB of storage; usage beyond included limits is pay-as-you-go.
Choose Fossil if you want free, open-source, self-hosted version control under a 2-clause BSD license. Accessibility Test Framework for Android is another free option. GitUI is a free open-source terminal Git client, while Magit is a free Emacs package. Apache Subversion is free, open-source version control software, and BitKeeper is free and open source under the Apache 2.0 License. Browse Version Control Software for more options.
Verdict
Choose Darcs if your team values offline work, precise patch selection, and email-based review, and can organize development around repositories instead of local branches. Its zero-cost, self-hosted model is straightforward; the main reason to look elsewhere is the combination of missing local branches, limited file and large-file support, and performance concerns.
Getting started
- Visit the Darcs website
- Install with Cabal, Stack or Nix
- Use a platform binary or source tarball
- Create or use a repository as the working directory
- Push and pull repositories for sharing changes
Limits worth knowing
Darcs has no local branches and no Git-style staging index. Its documentation also notes performance problems in many areas, no file-permission versioning, no large-file handling, no sparse checkout and no nested repositories.
Questions
How much does Darcs cost?
The Darcs plan is 0.00 USD and is a free, open-source version control system.
Which operating systems are supported?
Darcs is listed for Windows, macOS, Linux and self-hosted use. Downloads also list OpenBSD and FreeBSD.
Can Darcs work offline?
Yes. Each working directory is a repository, so changes can be recorded offline and pushed later.
How can contributors submit changes?
Interactive commands let users select and edit patches. The darcs send command can email patches for maintainers to accept or reject without commit privileges.
Where can repositories be hosted?
The features page names hub.darcs.net and darcsweb as hosting and sharing options.
Is Darcs open source?
Yes. Darcs is free and open source, and the project is a member of the Software Freedom Conservancy.
Alternatives to Darcs
- 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
