Browse Definitions:
Definition

version control

Contributor(s): Matthew Haughn

Version control (also known as revision control or source control) is a category of processes and tools designed to keep track of multiple different versions of software, content, documents, websites and other information in development. Any system that provides change tracking and control over programming source code and documentation can be considered version control software. The practice has been a part of creative processes almost as long as writing has existed.

The purpose of version control is ensuring that content changes under development go as planned. While version control is often carried out by a separate application, it can also be embedded into programs such as integrated development environments (IDEs), word processors, spreadsheets and, especially, collaborative web documents and pages. Version control allows servers in multiple locations to run different versions on different sites, even while those versions are being updated simultaneously.

The most powerful and complex version control systems are used in software development. Version control often operates by locking files and using a check-out / check-in system for changed versions. Versions may be identified by labels or tags; approved versions or those that are especially significant may be designated baselines. Checked-out versions may be worked on by different groups or individuals as branching code from the main trunk. When versions are checked out and checked in, the first to check in is sure to succeed. If other versions are checked out, some systems may provide for version merging to allow further changes to be added into the central repository.

Another method used in version control is branching, in which programs in development are copied for development in parallel versions, retaining the original and working on the branch or making different changes to each. Each copy is considered a branch; the original program from which the branch is taken is referred to as the trunk, the baseline, the mainline or the master.

Version control is generally based on a client-server model. Another method is distributed version control, in which all copies are in a codebase repository and changes are synchronized through patches or changes shared from peer to peer.

The terms version control and versioning are sometimes used interchangeably even though their technical meanings are different.

This was last updated in September 2016

Continue Reading About version control

Join the conversation

1 comment

Send me notifications when other members comment.

By submitting you agree to receive email from TechTarget and its partners. If you reside outside of the United States, you consent to having your personal data transferred to and processed in the United States. Privacy

Please create a username to comment.

Version control works well with a plain text format. For other data files, especially binary, only date/time comparison makes some sense.
Cancel

-ADS BY GOOGLE

File Extensions and File Formats

Powered by:

SearchCompliance

  • internal audit (IA)

    An internal audit (IA) is an organizational initiative to monitor and analyze its own business operations in order to determine ...

  • pure risk (absolute risk)

    Pure risk, also called absolute risk, is a category of threat that is beyond human control and has only one possible outcome if ...

  • risk assessment

    Risk assessment is the identification of hazards that could negatively impact an organization's ability to conduct business.

SearchSecurity

  • computer exploit

    A computer exploit, or exploit, is an attack on a computer system, especially one that takes advantage of a particular ...

  • cyberwarfare

    Cyberwarfare is computer- or network-based conflict involving politically motivated attacks by a nation-state on another ...

  • insider threat

    Insider threat is a generic term for a threat to an organization's security or data that comes from within.

SearchHealthIT

SearchDisasterRecovery

  • business continuity and disaster recovery (BCDR)

    Business continuity and disaster recovery (BCDR) are closely related practices that describe an organization's preparation for ...

  • business continuity plan (BCP)

    A business continuity plan (BCP) is a document that consists of the critical information an organization needs to continue ...

  • call tree

    A call tree -- sometimes referred to as a phone tree -- is a telecommunications chain for notifying specific individuals of an ...

SearchStorage

  • SATA Express (SATAe)

    SATA Express (SATAe or Serial ATA Express) is a bus interface to connect storage devices to a computer motherboard, supporting ...

  • DIMM (dual in-line memory module)

    A DIMM (dual in-line memory module) is the standard memory card used in servers and PCs.

  • nearline storage

    Nearline storage is the on-site storage of data on removable media.

SearchSolidStateStorage

  • 3D XPoint

    3D XPoint is memory storage technology jointly developed by Intel and Micron Technology Inc.

  • RRAM or ReRAM (resistive RAM)

    RRAM or ReRAM (resistive random access memory) is a form of nonvolatile storage that operates by changing the resistance of a ...

  • JEDEC

    JEDEC is a global industry group that develops open standards for microelectronics.

SearchCloudStorage

  • Google Cloud Storage

    Google Cloud Storage is an enterprise public cloud storage platform that can house large unstructured data sets.

  • RESTful API

    A RESTful application program interface breaks down a transaction to create a series of small modules, each of which addresses an...

  • cloud storage infrastructure

    Cloud storage infrastructure is the hardware and software framework that supports the computing requirements of a private or ...

Close