[prev] [index] [next]

Version Control

Any large, useful software system ...
  • will undergo many revisions in its lifetime
  • most likely undertaken by several different programmers
  • who may work on the code concurrently and independently
    (happens frequently on large Open Source projects like Linux)
The process of code change needs to be managed so that
  • no (useful) changes are lost
  • the changes produce "consistent" versions of the system
  • we can roll back to earlier versions of the code (bug fixes)