What is Git?

What is Git?

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


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
What is the DMCA?
Added on Mon, Feb 11, 2019
How to request and revoke facility access - OTR
Added on Mon, Jan 22, 2018
What is SOAP?
Added on Tue, Jan 6, 2015
Nexcess Product Life Cycle
Added on Tue, Feb 5, 2019
What is GeoIP?
Added on Fri, Oct 31, 2014
How to request and revoke facility access (MEL, TMR)
Added on Wed, Feb 28, 2018
How to transfer domains
Added on Wed, Nov 23, 2016
How do I get sudo access to my Nexcess server?
Added on Wed, Feb 6, 2019
How to change SSH passwords from the CLI
Added on Thu, Feb 8, 2018
How to interpret MTR results
Added on Tue, Jun 26, 2018