Browse Definitions :
Definition

version control

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

Networking
  • firewall as a service (FWaaS)

    Firewall as a service (FWaaS), also known as a cloud firewall, is a service that provides cloud-based network traffic analysis ...

  • private 5G

    Private 5G is a wireless network technology that delivers 5G cellular connectivity for private network use cases.

  • NFVi (network functions virtualization infrastructure)

    NFVi (network functions virtualization infrastructure) encompasses all of the networking hardware and software needed to support ...

Security
  • virus (computer virus)

    A computer virus is a type of malware that attaches itself to a program or file. A virus can replicate and spread across an ...

  • Certified Information Security Manager (CISM)

    Certified Information Security Manager (CISM) is an advanced certification that indicates that an individual possesses the ...

  • cryptography

    Cryptography is a method of protecting information and communications using codes, so that only those for whom the information is...

CIO
  • IT project management

    IT project management is the process of planning, organizing and delineating responsibility for the completion of an ...

  • chief financial officer (CFO)

    A chief financial officer (CFO) is the corporate title for the person responsible for managing a company's financial operations ...

  • chief strategy officer (CSO)

    A chief strategy officer (CSO) is a C-level executive charged with helping formulate, facilitate and communicate an ...

HRSoftware
Customer Experience
  • martech (marketing technology)

    Martech (marketing technology) refers to the integration of software tools, platforms, and applications designed to streamline ...

  • transactional marketing

    Transactional marketing is a business strategy that focuses on single, point-of-sale transactions.

  • customer profiling

    Customer profiling is the detailed and systematic process of constructing a clear portrait of a company's ideal customer by ...

Close