Darcs: Difference between revisions
mNo edit summary |
contrast distributed - centralized, aims, idea of basic usage |
||
Line 1: | Line 1: | ||
'''DARCS''' is a [[revision control]] system by [[David Roundy]] designed to replace [[Concurrent Versions System|CVS]] |
'''DARCS''' is a distributed [[revision control]] system by [[David Roundy]] designed to replace the centralized [[Concurrent Versions System|CVS]]. Several noticeable differences in the design aim for simple use and powerful features. Each copy of the source tree acts as a full repository, allowing several different versions to be maintained in different locations. Patches are global to the repository and are subject under certain conditions to reordering, as governed by the project's [http://darcs.net/manual/node8.html#Patch Theory of Patches]. |
||
In basic usage, you ''get'' a copy of a repository, make any changes, ''record'' the changes, ''pull'' changes from other repositories, and finally ''push'' or ''send'' changes to other repositories. To start a new repository, you can ''init'' any directory. |
|||
Other repositories can be local directories, or accessed by [[SSH]] or [[HTTP]] protocols. Even if it is not possible to write to the other repository, the changes can be sent by email to the repository owner for inclusion. |
|||
One notable, and somewhat unusual, aspect of DARCS is that it is written in the [[Haskell programming language]]. |
One notable, and somewhat unusual, aspect of DARCS is that it is written in the [[Haskell programming language]]. |
Revision as of 09:55, 4 August 2005
DARCS is a distributed revision control system by David Roundy designed to replace the centralized CVS. Several noticeable differences in the design aim for simple use and powerful features. Each copy of the source tree acts as a full repository, allowing several different versions to be maintained in different locations. Patches are global to the repository and are subject under certain conditions to reordering, as governed by the project's Theory of Patches.
In basic usage, you get a copy of a repository, make any changes, record the changes, pull changes from other repositories, and finally push or send changes to other repositories. To start a new repository, you can init any directory.
Other repositories can be local directories, or accessed by SSH or HTTP protocols. Even if it is not possible to write to the other repository, the changes can be sent by email to the repository owner for inclusion.
One notable, and somewhat unusual, aspect of DARCS is that it is written in the Haskell programming language.