26 September 2021

Scrum and Technical Practices : Version Control

Version Control definition

  • 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.

Version Control purpose

  • 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.

Version Control practice

  • 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.
    • 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.

Version Control synonyms

  • The terms version control and versioning are sometimes used interchangeably even though their technical meanings are different.
  • Synonyms of the original program in source control from which branches are taken :
    • Trunk
    • Master
    • Mainline

Branching

Merging

Version Control, branching and Merging and Standards

More informations for the Scrum PSD certification here.

Leave a Reply

Your email address will not be published. Required fields are marked *