What is Git?
Article Number: 966 | Rating: 4.7/5 from 3 votes | Last Updated: Fri, Nov 11, 2016 at 1:01 PM
What is Git?
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.
There are no attachments for this article.
Colocation Access Card Request Form
Added on Tue, Oct 6, 2015
How to not misinterpret MTR results
Added on Wed, Dec 21, 2016
How to transfer domains
Added on Wed, Nov 23, 2016
How to flush Memcached
Added on Mon, Apr 30, 2018
What is SOAP?
Added on Tue, Jan 6, 2015
How to change SSH passwords from the CLI
Added on Thu, Feb 8, 2018
What is GeoIP?
Added on Fri, Oct 31, 2014
How to find a development partner
Added on Mon, Feb 16, 2015
What is the DMCA?
Added on Mon, Dec 29, 2014
What are the benefits of dedicated IP addresses?
Added on Thu, Jan 14, 2016