Darcs

From HaskellWiki
Revision as of 00:38, 21 August 2006 by Ashley Y (talk | contribs) (some quick doc)
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

darcs is a peer-to-peer revision control system, written in Haskell.

Understanding darcs

You can think of a darcs repository as containing these things:

  • Patches: a patch is a collection of changes that forms the unit of synchronisation with other repositories
  • Unrecorded changes to known files and directories
  • Unknown items (files and directories)
  • Boring items: anything with a name matched in _darcs/prefs/boring

Operations

Unknown items

  • creating a item: these will be "unknown".
  • darcs add: turns an unknown item into an change
  • darcs remove: creates an change to remove the item. The item is not deleted, but becomes unknown.
  • darcs whatsnew -l: show changes and unknown items

Changes

  • removing an item: also creates a change to remove the item
  • editing a file adds to the edit to the changes
  • darcs whatsnew: show changes
  • darcs mv: create a change to move an item
  • darcs replace: create a change to replace text in a file
  • darcs record: record changes as a patch

Patches

  • darcs pull: pull patches from another repository
  • darcs push: push patches to another repository
  • darcs apply: get patches from an email bundle

External link