Getting started with version control

Nitin goyal
2 min readSep 27, 2018

Introduction

Version control is a tool which helps developer or teams to track their changes to source code. It keeps track of every modification you made to the code in a database. If an error occurred or something bad happen or a mistake is made, can be turned back to the earlier version easily.

Benefits of version control

  1. Long-term history of changes: Version control keeps track of changes of every file even it is deleted util the repository is exists. it also keeps track of all edits of the file content. it also keep track of author, date and notes on the changes.
  2. Branching and Merging: Version control allow developers to work on copy of main code base (called as branch) until it is ready. the branches names can vary from organization to organization currently most common pattern for the name of the branch is feature branches. in feature branch developer develop individual features and when the feature is ready to deploy the branch is merged to the main stream.

Types of version control system

  1. CVS
  2. SVN
  3. GIT
  4. Mercurial
  5. Bazaar

1. Concurrent Version System (CVS)

CVS is the initial version control system launched in 1986. it is based on client-server architecture. In this server stores all the changes of a project and it’s history. clients connect to server in order to “check out” a complete copy of the project, and after made changes they “Check in” it. to avoid conflicts, the server only accepts changes made to most recent version of a file. to make sure their are less number of conflicts developers have to keep their “working copy” up to date.

2. Subversion (SVN)

SVN is a version control system which allow to keep track of text-based document. It is a centralized version control system which means that their is one central repository which is used by all developers or teams. Developers have to made changes into their local working copy. after changes are made it is committed back to the repository.

3. Global Information Tracker (GIT)

GIT is new in the version control system but it is widely adopting by developers these days. GIT was developed by Linus Torvalds, creator of Linux kernel. GIT is a distributed version control system aimed to Speed, Data Integrity and Support to non-linear workflow. Every GIT directory contains full information about the history. allow changes from one repository to another. The merging can be made from server as well as client computer and after that can pushed to main stream.

4. Mercurial

This is similar to GIT. It was designed for high performance and salable, robust to handle both types of files (text, binary). it is designed to support large (multi-)project repositories.

5. Bazaar

It is similar to other distributed version control system but also allowed to central code base too. it is very versatile in natures as it support to different numbers of workflows.

--

--

Nitin goyal

working as DevSecOps Engineer at Pixlevide Solutions. Loves to solve everyday problems with Automation.