Darcs: Difference between revisions
some quick doc |
No edit summary |
||
Line 38: | Line 38: | ||
=== Patches === | === Patches === | ||
*<tt>darcs pull</tt>: | *<tt>darcs pull</tt>: get patches from another repository | ||
*<tt>darcs push</tt>: | *<tt>darcs push</tt>: put patches in another repository | ||
*<tt>darcs apply</tt>: get patches from an email bundle | *<tt>darcs apply</tt>: get patches from an email bundle | ||
=== Repositories === | |||
*<tt>darcs initialize</tt>: create a new empty repository | |||
*<tt>darcs get</tt>: create a new empty repository and get patches from another repository | |||
== External link == | == External link == |
Revision as of 00:40, 21 August 2006
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: get patches from another repository
- darcs push: put patches in another repository
- darcs apply: get patches from an email bundle
Repositories
- darcs initialize: create a new empty repository
- darcs get: create a new empty repository and get patches from another repository