Comparison between Darcs and OpenCM

Back to main page

   
SCM feature: Darcs OpenCM Add to comparison: +CVS
+AccuRev
+Aegis
+AllChange
+Arch
+Bazaar
+BitKeeper
+ClearCase
+CM+
+CMSynergy
+Co-Op
+Git
+LibreSource Synchronizer
+Mercurial
+Monotone
+Perforce
+PureCM
+SourceAnywhere
+Subversion
+Superversion
+Surround SCM
+svk
+Team Foundation Server
+Vesta
+Visual SourceSafe
Atomic Commits
Yes. Commits are atomic.
Files and Directories Moves or Renames
Yes. Renames are supported. Yes. Renames are supported
Intelligent Merging after Moves or Renames
Unknown.
File and Directories Copies
No. Copies of files and directory structures are not supported. No. Copies are not supported.
Remote Repository Replication
Yes. No.
Propagating Changes to Parent Repositories
Yes. No.
Repository Permissions
No. Permissions are defined on a per-branch basis.
Changesets' Support
Yes. Changesets are supported.
Tracking Line-wise File History
Yes. (darcs annotate) Unknown. Probably not.
Ability to Work only on One Directory of the Repository
It is possible to commit only a certain directory. However, one must check out the entire repository as a whole. No. All changes are made to a project as a unit
Tracking Uncommited Changes
Yes, using "darcs whatsnew". Yes. Using cm diff
Per-File Commit Messages
No. Unknown.
Documentation
Good. The manual contains a brief tutorial and a solid reference. Every sub-command can print its usage. Because the command-set is small and the model is simple, many users find it easy to get started. Well documented.
Ease of Deployment
Very good. darcs requires few external libraries, however you need the Glasgow Haskell Compiler if you cannot find a binary. To start working, just "darcs init". Very good. Install the RPM, or build from tarball and install the init script.
Command Set
The command set is fairly compact and the core commands are easy to understand. Follows CVS in a few places, but since the model is different most commands are unique. A CVS-like command set that is familiar to existing CVS users.
Networking Support
Good. Darcs supports getting patches over HTTP, and getting and sending patches over SSH and email. Good. Uses its own proprietary client/server protocol.
Portability
Very good. Supports many UNIXes, Mac OS X, and Windows, and is written in a portable language. Good. Portable across all UNIX systems.
Web Interface
darcs.cgi is included in the distribution. No.
Availability of Graphical User-Interfaces.
None to speak of. (There is a modest graphical interface to a few commands in the distribution, but it is not being developed currently.) No GUIs are available.
 


Information taken from Better SCM Initiative website by Shlomi Fish (shlomif@iglu.org.il).

Reorganized for usability by Alexey Mahotkin (Version Control Blog) in 2008.

 

Creative Commons License
This work is licensed under a Creative Commons License.