1
Taxonomy of version control systems
 
 
2
===================================
 
 
4
(ie a look at "cutting questions" that describe different design
 
 
8
History in working copy
 
 
9
-----------------------
 
 
11
Is history stored with working directory (bk, rcs, darcs), or
 
 
12
separately (cvs, baz)?
 
 
14
Storing in the working directory may be simpler in some respects;
 
 
15
it's one less concept people need to learn.  On the other hand
 
 
16
people typically have more working copies than branches, and this
 
 
17
approach means having more copies of the history.
 
 
19
Naively, storing everything in the working copy can mean that you
 
 
20
keep multiple copies of the history, which would use a lot of disk,
 
 
26
Can you change recorded history (darcs); only do this through a
 
 
27
special mechanism (cvs, svn); or not do it at all?
 
 
29
Being absolutely able to reproduce any point in time reliably is
 
 
30
highly attractive.  On the other hand, sometimes people commit
 
 
31
something (e.g. confidential information) that really should not be
 
 
32
recorded.  And at a smaller level people might just commit the wrong
 
 
39
Can you edit any file in a working copy (cvs, tla) or must you
 
 
40
specially mark the before editing (rcs, bk)?
 
 
42
There are two reasons to mark files for editing.  One is so that
 
 
43
people can be notified that a file is about to
 
 
46
Track history of patches
 
 
47
------------------------
 
 
49
Can you see how a patch got to its current destination?  As far as I
 
 
50
know only arch can do this -- you can see what branches it
 
 
51
incorporates changes from.  Well, kind of; not in an entirely
 
 
52
straightforward manner.
 
 
59
When patches from other people are integrated, can they be rolled up
 
 
60
into larger patches (arch) or do they retain their individual identity