DSCM

DistributedSourceCodeManagement

What Martin Langhoff explained to me at the recent November CafeConf 2006 BuenosAires OpenSource gathering, is that Git (especially when aided in usability by Cogito and/or GUIs if you need them) is vastly superior to the "old style" VersionControlSystem like CVS and SVN, because:

  • It distinguishes between committer and author roles
  • Check out is called clone, because you check out the whole history of the source code tree
  • You don't need a server (unless you need a server)
  • Commits are local! So don't be afraid to spend them!
  • When you want to publish your commits, you ask a commiter to accept your commits on a centralized published source code tree, with the push command. So you can fork without forking, and commit without committing, and then the central group takes what they need.
  • You can truly merge often and build frequently, both individually and in a group.
  • All these things are much harder to do with CVS and SVN.

Other tools, apart from Git and its family (Cogito, etc.) are:

VersionControlSystem

Wikipedia definition begins by saying:

Revision control (also known as version control, source control or (source) code management (SCM)) is the management of multiple revisions of the same unit of information. It is most commonly used in engineering and software development to manage ongoing development of digital documents like application source code, art resources such as blueprints or electronic models and other critical information that may be worked on by a team of people. Changes to these documents are identified by incrementing an associated number or letter code, termed the "revision number", "revision level", or simply "revision" and associated historically with the person making the change. A simple form of revision control, for example, has the initial issue of a drawing assigned the revision number "1". When the first change is made, the revision number is incremented to "2" and so on.

Syndicate content