17 Facts About Git


Git is free and open source software for distributed version control: tracking changes in any set of files, usually used for coordinating work among programmers collaboratively developing source code during software development.

FactSnippet No. 519,401

Git was originally authored by Linus Torvalds in 2005 for development of the Linux kernel, with other kernel developers contributing to its initial development.

FactSnippet No. 519,402

Git is free and open-source software distributed under the GPL-2.

FactSnippet No. 519,403

Git development began in April 2005, after many developers of the Linux kernel gave up access to BitKeeper, a proprietary source-control management system that they had been using to maintain the project since 2002.

FactSnippet No. 519,404

Source code for Git refers to the program as, "the information manager from hell.

FactSnippet No. 519,405

The core Git project has since become a complete version-control system that is usable directly.

FactSnippet No. 519,406

Git's design is a synthesis of Torvalds's experience with Linux in maintaining a large distributed development project, along with his intimate knowledge of file-system performance gained from the same project and the urgent need to produce a working system in short order.

FactSnippet No. 519,407

From this initial design approach, Git has developed the full set of features expected of a traditional SCM, with features mostly being created as needed, then refined and extended over time.

FactSnippet No. 519,408

Git has two data structures: a mutable index that caches information about the working directory and the next revision to be committed; and an immutable, append-only object database.

FactSnippet No. 519,409

Git is primarily developed on Linux, although it supports most major operating systems, including the BSDs (DragonFly BSD, FreeBSD, NetBSD, and OpenBSD), Solaris, macOS, and Windows.

FactSnippet No. 519,410

JGit implementation of Git is a pure Java software library, designed to be embedded in any Java application.

FactSnippet No. 519,411

Dulwich implementation of Git is a pure Python software component for Python 2.

FactSnippet No. 519,412

Libgit2 implementation of Git is an ANSI C software library with no other dependencies, which can be built on multiple platforms, including Windows, Linux, macOS, and BSD.

FactSnippet No. 519,413

JS-Git is a JavaScript implementation of a subset of Git.

FactSnippet No. 519,414

Eclipse Foundation reported in its annual community survey that as of May 2014, Git is the most widely used source-code management tool, with 42.

FactSnippet No. 519,415

Git was the overwhelming favorite of responding developers in these surveys, reporting as high as 93.

FactSnippet No. 519,416

VFS for Git allows cloned repositories to use placeholders whose contents are downloaded only once a file is accessed.

FactSnippet No. 519,417