In order to understand the central need for source code control, it can be illuminating to have a brief look at the development history of source code management. This gives us an insight into the features that we ourselves might need. Some examples are as follows:
- Storing historical versions of source in separate archives: This is the simplest form, and it still lives on to some degree, with many free software projects offering tar archives of older releases to download.
- Centralized source code management with check in and check out: In some systems, a developer can lock files for exclusive use. Every file is managed separately. Tools like this include Revision Control System (RCS) and Source Code Control System (SCCS).
Normally, you don't encounter this class of tool anymore, except the occasional file header indicating that a file...