A version control system is a stand-alone, fundamental component of a configuration management system that is responsible for the management of individual versions of
controlled files/items, providing the ability to manage versions of controlled item versions, typically involving the...
- Management i.e. creation, update & conditional deletion of item versions
- Support of version branches
- Support for the merging of item versions
- Management i.e. creation, update & conditional deletion of controlled item version labels
Note that the merging of item versions is specific to software configuration control/management systems, the facility is neither required, nor indeed present, in hardware control/management systems.
Note also that the management of item version labels provides the basis for baseline management - in which aggregates of items (& their versions) are managed as enitities in their own right.
I would take issue with CountZero in as much as ... Allows more than one programmer work on the same project ... is not necessarily provided by a version control system, it is known (in the trade) as co-ordination of concurrent development and is a fundamental requirement of any configuration management system.
A user level that continues to overstate my experience :-))