darcs  2.16.1
About: darcs is an advanced source code revision control (management) system.
  Fossies Dox: darcs-2.16.1.tar.gz  ("unofficial" and yet experimental doxygen-generated source code documentation)  

darcs Documentation

Some Fossies usage hints in advance:

  1. To see the Doxygen generated documentation please click on one of the items in the steelblue colored "quick index" bar above or use the side panel at the left which displays a hierarchical tree-like index structure and is adjustable in width.
  2. If you want to search for something by keyword rather than browse for it you can use the client side search facility (using Javascript and DHTML) that provides live searching, i.e. the search results are presented and adapted as you type in the Search input field at the top right.
  3. Doxygen doesn't incorporate all member files but just a definable subset (basically the main project source code files that are written in a supported language). So to search and browse all member files you may visit the Fossies
  4. darcs-2.16.1.tar.gz contents page and use the Fossies standard member browsing features (also with source code highlighting and additionally with optional code folding).


Darcs is a distributed version control system written in Haskell.

Getting started


The easiest way to build darcs is by using cabal-install version 3.2 or later. A plain

> cabal build


> cabal install

should work out of the box with any ghc version from 8.0 up to 8.10.

Run the test suite

It is currently not possible to run the full test suite from the source distribution that you get from hackage. Instead you need to be in a clone of the darcs source code repository. This is because the tests depend on an old version of shelly that was patched to work with newer ghc versions and bundled with Darcs. It is not part of the source distribution to avoid 'cabal install' also trying to install our patched version of shelly.

> cabal build --enable-tests
> cabal test --test-show-details=direct


To clone a repository via HTTP and send patches by mail:

> darcs clone --lazy http://darcs.net
> # edit files...
> darcs add my_new_file
> darcs record -m "my changes"
> darcs send

To clone via SSH and push patches:

> darcs clone user@hub.darcs.net:user/repo
> # edit files...
> darcs add my_new_file
> darcs record -m "my changes"
> darcs push

To create a project and start working:

> darcs init my_project
> cd my_project
> # create and edit files...
> darcs add my_new_file
> darcs record -m "initial version"

Pull new patches from upstream:

> darcs pull

Concise and up-to-date documentation is available from darcs itself:

> darcs help # list all commands
> darcs help command # help for specific command
> darcs command --help # dito

Reporting bugs

Please send bug reports to bugs@darcs.net. This will automatically add your report to the bug tracker. If you are unsure or just have a question or a comment, you can subscribe to darcs-users@darcs.net and post your question or comments there. See http://darcs.net/MailingLists for details.


Please consult http://darcs.net/Development/GettingStarted for information about how to contribute to Darcs. Or send an email to darcs-devel@darcs.net or to darcs-users@darcs.net.

The wiki can be downloaded with the command:

> darcs clone --lazy http://darcs.net/darcs-wiki