darcs: a distributed, interactive, smart revision control system

[ development, gpl, library ] [ Propose Tags ]

Darcs is a free, open source revision control system. It is:

  • Distributed: Every user has access to the full command set, removing boundaries between server and client or committer and non-committers.

  • Interactive: Darcs is easy to learn and efficient to use because it asks you questions in response to simple commands, giving you choices in your work flow. You can choose to record one change in a file, while ignoring another. As you update from upstream, you can review each patch name, even the full "diff" for interesting patches.

  • Smart: Originally developed by physicist David Roundy, darcs is based on a unique algebra of patches.

This smartness lets you respond to changing demands in ways that would otherwise not be possible. Learn more about spontaneous branches with darcs.

  • Please note that hackage does not correctly display the license. It is meant to be "GPL-2.0-or-later".


[Skip to Readme]

Modules

[Index] [Quick Jump]

Flags

Manual Flags

NameDescriptionDefault
executable

Build darcs executable

Enabled
warn-as-error

Build with warnings-as-errors

Disabled
Automatic Flags
NameDescriptionDefault
curl

Use libcurl for HTTP support.

Enabled
pkgconfig

Use pkgconfig to configure libcurl

Disabled
static

Build static binary

Disabled
terminfo

Use the terminfo package for enhanced console support.

Enabled
threaded

Use threading and SMP support.

Enabled
rtsDisabled

Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info

Downloads

Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.

Versions [RSS] 2.1.2.1, 2.1.2.2, 2.1.98.2, 2.1.99.0, 2.2.0, 2.2.1, 2.3.0, 2.3.1, 2.4, 2.4.1, 2.4.3, 2.4.4, 2.5, 2.5.1, 2.5.2, 2.8.0, 2.8.1, 2.8.2, 2.8.3, 2.8.4, 2.8.5, 2.10.0, 2.10.1, 2.10.2, 2.10.3, 2.12.0, 2.12.1, 2.12.2, 2.12.3, 2.12.4, 2.12.5, 2.14.0, 2.14.1, 2.14.2, 2.14.3, 2.14.4, 2.14.5, 2.16.1, 2.16.2, 2.16.3, 2.16.4, 2.16.5, 2.18.1, 2.18.2
Change log CHANGELOG
Dependencies array (>=0.5.1.0 && <0.6), async (>=2.0.2 && <2.3), attoparsec (>=0.13.0.1 && <0.14), base (>=4.9 && <4.15), base16-bytestring (>=0.1 && <0.2), binary (>=0.5 && <0.10), bytestring (>=0.10.6 && <0.11), containers (>=0.5.6.2 && <0.7), cryptohash (>=0.11 && <0.12), darcs, data-ordlist (>=0.4 && <0.5), directory (>=1.2.6.2 && <1.4), fgl (>=5.5.2.3 && <5.8), filepath (>=1.4.1 && <1.5.0.0), graphviz (>=2999.18.1 && <2999.20.1), hashable (>=1.2.3.3 && <1.4), haskeline (>=0.7.2 && <0.9), html (>=1.0.1.2 && <1.1), HTTP (>=4000.2.20 && <4000.4), mmap (>=0.5.9 && <0.6), mtl (>=2.2.1 && <2.3), network (>=2.6 && <3.2), network-uri (>=2.6 && <2.7), old-time (>=1.1.0.3 && <1.2), parsec (>=3.1.9 && <3.2), process (>=1.2.3.0 && <1.7), random (>=1.1 && <1.2), regex-applicative (>=0.2 && <0.4), regex-compat-tdfa (>=0.95.1 && <0.96), sandi (>=0.4 && <0.6), stm (>=2.1 && <2.6), tar (>=0.5 && <0.6), terminfo (>=0.4.0.2 && <0.5), text (>=1.2.1.3 && <1.3), time (>=1.5.0.1 && <1.10), transformers (>=0.4.2.0 && <0.6), unix (>=2.7.1.0 && <2.8), unix-compat (>=0.4.2 && <0.6), utf8-string (>=1 && <1.1), vector (>=0.11 && <0.13), Win32 (>=2.3.1 && <2.4), zip-archive (>=0.3 && <0.5), zlib (>=0.6.1.2 && <0.7.0.0) [details]
License GPL-2.0-only
Author David Roundy <droundy@darcs.net>, <darcs-devel@darcs.net>
Maintainer <darcs-devel@darcs.net>
Revised Revision 1 made by bfrk at 2020-04-27T10:57:17Z
Category Development
Home page http://darcs.net/
Source repo head: darcs get http://darcs.net/
Uploaded by bfrk at 2020-04-27T07:23:59Z
Distributions Arch:2.18.1, Debian:2.14.5, Fedora:2.16.5, FreeBSD:2.10.1, NixOS:2.18.2
Reverse Dependencies 2 direct, 0 indirect [details]
Executables darcs
Downloads 51055 total (312 in the last 30 days)
Rating 2.5 (votes: 3) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs uploaded by user [build log]
All reported builds failed as of 2020-04-27 [all 2 reports]

Readme for darcs-2.14.3

[back to package description]

Darcs

Darcs is a distributed version control system written in Haskell.

Getting started

Compiling

Build instructions are available at http://darcs.net/Binaries but they may not be up-to-date.

Here is a quick run down. The easiest way to build darcs is by using cabal-install version 3.2 or later. A plain

cabal build

should work out of the box with any ghc-8.x version. You may see some cabal warnings. Ignore them. If you want to run the tests, you need

cabal build --enable-tests

This can be made permanent by using

cabal configure --enable-tests

before building, which is useful mainly for development. Or you can combine building and testing:

cabal test --test-show-details=streaming

You can also run

cabal install

to install the library and the executable.

Using

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

$ darcs clone --lazy http://darcs.net
$ (edit files)
$ darcs add (new files)
$ darcs record -m "my changes"
$ darcs send

To clone from SSH and push patches:

$ darcs clone user@hub.darcs.net:user/repo
$ (edit files)
$ darcs add (new files)
$ darcs record -m "my changes"
$ darcs push

To create a project and start working:

$ darcs init (project)
$ cd (project)
$ (add files)
$ darcs add (files)
$ darcs record -m "initial version"

See http://darcs.net/Using for more information.

Reporting bugs

Please send bug reports to bugs@darcs.net.

Hacking

Please consult http://darcs.net/Development/GettingStarted for up-to-date information about contributing to Darcs.

The wiki can be downloaded with the command:

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