Introduction To Git

Introduction

This blog will be about getting started with Git. In this chapter I will explain some background on version control tools, then move on to how to get Git running on our system and finally how to get it set up to start working with.

About Version Control

What is “version control”, and why should we use this Git ? Version control is a system that records changes to a file or set of files over time so that you can recall specific versions later. 

Version control is an important part of software configuration management. It refers to the act of numbering the changes made in a computer program or document. Nothing stays the same forever and change is the only thing permanent. It allows you to revert selected files back to a previous state, revert the entire project back to a previous state, compare changes over time, see who last modified something that might be causing a problem, who introduced an issue and when, and more. Using a VCS also generally means that if you screw things up or lose files, you can easily recover. There are three types of Version Controls are there. They are:

  1. Local Version Control System
  2. Centralised Version Control System
  3. Distributed Version Control System

1.Local Version Control Systems

Local version control system maintains track of files within the local system. This approach is very common and simple. This type is also error prone which means the chances of accidentally writing to the wrong file is higher.

LC

Figure 1. Local version control.

 

2.Centralized Version Control Systems

In this approach, all the changes in the files are tracked under the centralized server. The centralized server includes all the information of versioned files, and list of clients that check out files from that central place.

Example: Tortoise SVN

CC

Figure 2. Centralized version control.

 

3.Distributed Version Control Systems

Distributed version control systems come into the picture to overcome the drawback of centralized version control system. The clients completely clone the repository including its full history. If any server dies, any of the client repositories can be copied on to the server which help restore the server.Every clone is considered as a full backup of all the data.

Example: Git

DC

Figure 3. Distributed version control.

Leave a comment