1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
 
 | 
******************
Compared to OpenCM
******************
  http://opencm.org/
Not very stable; apparently inactive.  
* Separated working copy & repository model.
* Files have long-lived identifiers.
* Files and revisions identified by the SHA-1 hash of their content
  (as in monotone); explicitly makes it easier to be sure we have the
  right one and prevents some tricks.
* Binding of objects to external names done on the client, so you can
  version e.g. database objects, instead of files.
* Directories are inferred by having files that exist under them;
  empty directories are a special case with an object of type DIR.
  
  This is a bit ugly.  I might rather have files given a name only
  relative to their parent directory.  So renaming a directory will
  only update the entry for the directory, and everything will move
  with it.
* Access-control rules about who can write to a central server. 
* Their design is somewhat similar to ours and used a lot of disk
  space -- enough to be a significant problem.
* Assigning human names to branches proved problematic -- i think this
  is a good reason to rely on the filesystem/URL space, which people
  already know how to manage and deal with.
 
 |