Home : Software Terms : Version Control Definition

Version Control

Version control is used to manage multiple versions of computer files and programs. A version control system, or VCS, provides two primary data management capabilities. It allows users to 1) lock files so they can only be edited by one person at a time, and 2) track changes to files.

If you are the only person editing a document, there is no need to lock a file for editing. However, if a team of developers is working on a project, it is important that no two people are editing the same file at the same time. When this happens, it is possible for one person to accidentally overwrite the changes made by someone else. For this reason, version control allows users to "check out" files for editing. When a file has been checked out from a shared file server, it cannot be edited by other users. When the person finishes editing the file, he can save the changes and "check in" the file so that other users can edit the file.

Version control also allows users to track changes to files. This type of version control is often used in software development and is also known as "source control" or "revision control." Popular version control systems like Subversion and CVS allow developers to save incremental versions of programs and source code files during the development process. This provides the capability to rollback to an earlier version of the program if necessary. For example, if bugs are found in a new version of a software program, the developer can review the previous version when debugging the code.

Version control software requires that all files are saved in a central location. This location is called the repository and contains all previous and current versions of files managed by the VCS. Whenever a new file is created or a current file is updated, the changes are "committed" to the repository, so the latest version is available to all users.

Updated: August 18, 2011

Cite this definition:


TechTerms - The Tech Terms Computer Dictionary

This page contains a technical definiton of Version Control. It explains in computing terminology what Version Control means and is one of many software terms in the TechTerms dictionary.

All definitions on the TechTerms website are written to be technically accurate but also easy to understand. If you find this Version Control definition to be helpful, you can reference it using the citation links above. If you think a term should be updated or added to the TechTerms dictionary, please email TechTerms!