what-i-want-from-a-vcs.md (895B)
1 # What I Want From a VCS 2 3 Similar to Luke Smith's blog post about browsers [1], I would like to put forth what I want from a VCS. Currently, no VCS meets all of my requirements for it to be considered good. 4 5 Here is a list of VCS's in consideration. If there are additional ones I am missing that are free software (a requirement for it to even be considered ethical to use) and reasonable enough to be compared, please email me. 6 7 - Git 8 - Mercurial 9 - Subversion (SVN) 10 - Fossil 11 - Darcs 12 - Revision Control System 13 - CVS 14 - SCCS 15 - Pijul 16 - JJ 17 18 19 ## Cutting Down The List 20 21 22 1. The VCS can't allow rewriting history 23 24 The purpose of a VCS is to track the history of files. If the history of files can be rewritten it both makes the state at a given time confusing, and defeats the purpose of using a VCS. 25 26 Disqualifies: 27 28 - Git (Rebase) 29 - JJ 30 - Fossil 31 - Mercurial 32 - Darcs 33 34 Allows: 35 36 - CVS 37 - SVS 38 - SCCS 39 - RCS