Difference between revisions of "VersionControlSystem"

From Warwick Student Cinema
Jump to: navigation, search
(bzr)
Line 16: Line 16:
 
*Fairly extensive documentation
 
*Fairly extensive documentation
 
*Lots of plugins
 
*Lots of plugins
  +
*Not quite so fast, but newer versions are better
   
 
== git ==
 
== git ==

Revision as of 17:57, 26 March 2007

Options for the replacement of CVS

  • CVS has a limited authentication model that means we need to fudge permissions every time a file is updated.
  • Symlinks are not supported
  • CVS is centralised which means that people need to be logged into the cvs pserver in order to use it
    • A decentralised repository would reduce the need for branching when commiting medium sized changesets.
    • A decentralised repository would mean that people don't have to be logged in to change the code, although they would not then benefit from the public_html facility.

bzr

Bazzar-ng will be released with etch and is a candidate that fixes all the above shortcommings

  • Has native windows support
  • Support for directory renames
  • Has mode that mimicks cvs
  • Fairly extensive documentation
  • Lots of plugins
  • Not quite so fast, but newer versions are better

git

Git will be released with etch and is a candidate that fixes all the above shortcommings

  • Renames are guessed based on the contents of a file as opposed to svn & bzr which use unique-ids
  • Strong support for non-linear development (branching).
  • Fast
  • Limited documentation
  • Rapidly moving target (etch will soon be out of date).

svn

SVN is the usual drop-in replacement for CVS.

  • SVN fixes most of the CVS shortcommings
  • SVN is very similar in operation to CVS
  • SVN uses a centralised repository
  • Very popular alternative to cvs
  • Stable