Contact
Site: US UK AU |

What is Git?

What is Git?

Overview
Git is a distributed revision control and source code management (SCM) system that emphasizes speed, data integrity, and support for distributed, non-linear workflows.

Purpose

Git supports rapid branching and merging, and includes specific tools for visualizing and navigating a non-linear development history. Git makes the core assumption that a change will be merged more often than it is written as it is passed around various reviewers. Branches in Git are very lightweight. It is only a reference to a single commit; with its parental commits, the full branch structure can be constructed.

What are its differences from other version control services (VCS)?

The major difference between Git and other VCSs, including Subversion, is how Git processes data. Conceptually, most other systems store information as a list of file-based changes. These systems CVS, Subversion, Perforce, Bazaar, and others retrieve the information they store as a set of files and the changes made to each file over time, as illustrated in Figure 1.

Figure 1.  Other systems tend to store data as changes to a base version of each file.

Other systems tend to store data as changes to a base version of each file. Git does not classify or store its data using this method. Instead, Git classifies its data like a set of snapshots of a mini file system. Every time you commit, or save the state of your project in Git, basically it takes a picture of what all your files look like at that moment and stores a reference to that snapshot.

If files have not changed, Git does not store the file again, just a link to the previous identical file it has already stored.

Figure 2. Git stores data as snapshots of the project over time.

Git stores data as snapshots of the project over time. This is an important distinction between Git and all other VCSs. This difference makes Git reconsider almost every aspect of version control that most other systems copied from the previous generation. Git operates more like a mini file system with powerful tools built on top of it, rather than simply a VCS.

 

For 24-hour assistance any day of the year, contact our Support Team by email or through the Client Portal.

Article Rating (3 Votes)
Rate this article
  • Icon PDFExport to PDF
  • Icon MS-WordExport to MS Word
 
Attachments Attachments
There are no attachments for this article.
Related Articles RSS Feed
How to flush memcached
Added on Thu, Apr 7, 2016
Facility Access Policy (OTR)
Added on Mon, Jan 22, 2018
How to transfer domains
Added on Wed, Nov 23, 2016
What is SOAP?
Added on Tue, Jan 6, 2015
How to decompress files in gzip
Added on Tue, Jan 6, 2015
How to change SSH passwords from the CLI
Added on Thu, Feb 8, 2018
How to not misinterpret MTR results
Added on Wed, Dec 21, 2016
How to create SSH keys in macOS and Linux
Added on Tue, Oct 20, 2015
How to request and revoke facility access - OTR
Added on Mon, Jan 22, 2018
How to flush Redis
Added on Thu, Apr 7, 2016