Git

git repositoryJunio HamanoGit (software)getGit ControlGit hosting serviceGit projectgit syncgit version controlGit version control system
Git is a distributed version-control system for tracking changes in source code during software development.wikipedia
440 Related Articles

Linus Torvalds

Linus Benedict TorvaldsJust for FunTorvalds, Linus
Git was created by Linus Torvalds in 2005 for development of the Linux kernel, with other kernel developers contributing to its initial development.
He also created the distributed version control system Git and the scuba dive logging and planning software Subsurface.

Linux kernel

LinuxLinux kernel mainlinekernel
Git was created by Linus Torvalds in 2005 for development of the Linux kernel, with other kernel developers contributing to its initial development. Git development began in April 2005, after many developers of the Linux kernel gave up access to BitKeeper, a proprietary source-control management (SCM) system that they had formerly used to maintain the project.
In response, Torvalds and others wrote a new source code control system for the purpose, called Git.

Repository (version control)

repositorysource code repositoryrepositories
As with most other distributed version-control systems, and unlike most client–server systems, every Git directory on every computer is a full-fledged repository with complete history and full version-tracking abilities, independent of network access or a central server.
Depending on whether the version control system in use is distributed (for instance, Git or Mercurial) or centralized (Subversion or Perforce, for example), the whole set of information in the repository may be duplicated on every user's system or may be maintained on a single server.

Cogito (software)

Cogito
Git was originally designed as a low-level version-control system engine, on top of which others could write front ends, such as Cogito or StGIT.
Cogito (originally git-pasky) is a revision control system layered on top of Git.

Monotone (software)

Monotone
Git's design was inspired by BitKeeper and Monotone.
Monotone uses SHA-1 hashes to identify specific files or groups of files, as with Git and Mercurial, in place of linear revision numbers.

Mercurial

HgMatt Mackalltalking out of both sides of her mouth
The same incident also spurred the creation of another version-control system, Mercurial. Version control systems used by responding developers: Git (69.3% in 2015, 69.2% in 2017 and 87.2% in 2018), Subversion (36.9% in 2015, 9.1% in 2017 and 16.1% in 2018), Microsoft Team Foundation Server (12.2% in 2015, 7.3% in 2017 and 10.9% in 2018), Mercurial (7.9% in 2015, 1.9% in 2017 and 3.6% in 2018), CVS (4.2% in 2015; not listed in 2017 or 2018), Perforce (3.3% in 2015; not listed in 2017 or 2018), Microsoft Visual SourceSafe (0.6% in 2017; not listed in 2015 or 2018), Rational ClearCase (0.4% in 2017; not listed in 2015 or 2018), Zip file backups (not listed in 2015; 2.0% in 2017 and 7.9% in 2018), Copying and pasting files to network shares (not listed in 2015; 1.7% in 2017 and 7.9% in 2018), Other (5.8% in 2015, 3.0% in 2017; not listed in 2018) and None (9.3% in 2015, 4.8% in 2017 and 4.8% in 2018).
This project started a few days after the now well-known Git project was initiated by Linus Torvalds with similar aims.

Gerrit (software)

Gerrit
JGit is used in the Gerrit code-review tool and in EGit, a Git client for the Eclipse IDE.
It integrates closely with Git, a distributed version control system.

Merkle tree

hash treeTiger Tree HashMerkle hash tree
Hash trees are also used in the IPFS, Btrfs and ZFS file systems (to counter data degradation ); Dat protocol; Apache Wave protocol; Git and Mercurial distributed revision control systems; the Tahoe-LAFS backup system; Zeronet; the Bitcoin and Ethereum peer-to-peer networks; the Certificate Transparency framework; and a number of NoSQL systems such as Apache Cassandra, Riak, and Dynamo.

Larry McVoy

The copyright holder of BitKeeper, Larry McVoy, had withdrawn free use of the product after claiming that Andrew Tridgell had created SourcePuller by reverse engineering the BitKeeper protocols.
The BitKeeper source control system was also developed and integrated into the Linux development process in 2002, but after McVoy decided to charge for the use of BitKeeper, the Linux development community prompted the development of the git tool that began serving as the source control system for the Linux kernel in 2005.

GNU Bazaar

BazaarTortoiseBzrBaazar
Read-only access is also available for Git and Mercurial.

Distributed version control

distributed revision controlpull requestDistributed
Git is a distributed version-control system for tracking changes in source code during software development.
The development of Git, now the world's most popular version control system, was prompted by the decision of the company that made BitKeeper to rescind the free license that Linus Torvalds and some other Linux kernel developers had previously taken advantage of.

SourcePuller

The copyright holder of BitKeeper, Larry McVoy, had withdrawn free use of the product after claiming that Andrew Tridgell had created SourcePuller by reverse engineering the BitKeeper protocols.
While not widely used itself, it is best known for triggering the BitKeeper controversy, which sparked the switch of the Linux kernel from BitKeeper to Git.

Darcs

Many branching, merging, and cherry-picking operations that would require additional commands with snapshot-based systems like Git or Mercurial can be directly done with Darcs with the usual "pull" and "push" commands.

Revision Control System

RCSRCS (Revision Control System)
The earliest systems for tracking versions of source code, Source Code Control System (SCCS) and Revision Control System (RCS), worked on individual files and emphasized the space savings to be gained from interleaved deltas (SCCS) or delta encoding (RCS) the (mostly similar) versions.
RCS is still used in some projects, but its continued usage is nowhere near that of more modern tools like Git.

SHA-1

SHA1SHA-0secure hash
Git uses SHA-1 hashes internally.

Merge (version control)

mergemergingmerged
This technique is used by the Git revision control tool.

BitKeeper

BitMover
Git's design was inspired by BitKeeper and Monotone. Git development began in April 2005, after many developers of the Linux kernel gave up access to BitKeeper, a proprietary source-control management (SCM) system that they had formerly used to maintain the project.
The Git project was launched with the intent of becoming the Linux kernel's source code management software, and was eventually adopted by Linux developers.

RhodeCode

It provides centralized control over Git, Mercurial, and Subversion repositories within an organization, with common authentication and permission management.

Trac

Trac integrates with major version control systems including ("out of the box") Subversion and Git.

GitHub

github.comGistGitHub Pages
Best known are probably GitHub and Bitbucket offerings, but many others are available, like GitLab, Gitea, GerritForge, etc.
GitHub is an American company that provides hosting for software development version control using Git.

Bitbucket

Bitbucket ServerStashStash (software)
Best known are probably GitHub and Bitbucket offerings, but many others are available, like GitLab, Gitea, GerritForge, etc.
Bitbucket is a web-based version control repository hosting service owned by Atlassian, for source code and development projects that use either Mercurial (since launch till June 1, 2020 ) or Git (since October 2011 ) revision control systems.

Cryptographic hash function

cryptographic hashhashhashing
Each object is identified by a SHA-1 hash of its contents.
A message digest can also serve as a means of reliably identifying a file; several source code management systems, including Git, Mercurial and Monotone, use the sha1sum of various types of content (file content, directory trees, ancestry information, etc.) to uniquely identify them.

GitLab

Gitlab.comGitlab IssuesGitlabs
Best known are probably GitHub and Bitbucket offerings, but many others are available, like GitLab, Gitea, GerritForge, etc.
GitLab is a web-based DevOps lifecycle tool that provides a Git-repository manager providing wiki, issue-tracking and CI/CD pipeline features, using an open-source license, developed by GitLab Inc. The software was created by Ukrainians Dmitriy Zaporozhets and Valery Sizov, and is used by several large tech companies including IBM, Sony, Jülich Research Center, NASA, Alibaba, Oracle, Invincea, O’Reilly Media, Leibniz-Rechenzentrum (LRZ), CERN, European XFEL, GNOME Foundation, Boeing, Autodata, and SpaceX.

Phabricator

Phabricator PonderPhriction
Phabricator integrates with Git, Mercurial, and Subversion.

Apache Subversion

SubversionSVNSubversion (SVN)
Version control systems used by responding developers: Git (69.3% in 2015, 69.2% in 2017 and 87.2% in 2018), Subversion (36.9% in 2015, 9.1% in 2017 and 16.1% in 2018), Microsoft Team Foundation Server (12.2% in 2015, 7.3% in 2017 and 10.9% in 2018), Mercurial (7.9% in 2015, 1.9% in 2017 and 3.6% in 2018), CVS (4.2% in 2015; not listed in 2017 or 2018), Perforce (3.3% in 2015; not listed in 2017 or 2018), Microsoft Visual SourceSafe (0.6% in 2017; not listed in 2015 or 2018), Rational ClearCase (0.4% in 2017; not listed in 2015 or 2018), Zip file backups (not listed in 2015; 2.0% in 2017 and 7.9% in 2018), Copying and pasting files to network shares (not listed in 2015; 1.7% in 2017 and 7.9% in 2018), Other (5.8% in 2015, 3.0% in 2017; not listed in 2018) and None (9.3% in 2015, 4.8% in 2017 and 4.8% in 2018).
SVN labels would more closely resemble the "tags" of other systems such as CVS or Git.