Certification – July 2019

(C. Jardin) #1

Gitting to Know You


What is Git?


At a nuts-and-bolts level, Git is
simply a version control software. It
lets users distribute their develop-
ment project to the masses for review
and discussion. Formal and informal
partners create and build on top of
whatever it is you’ve released.
In physical terms, suppose that you
want to build a pyramid, so you lay
a brick down. Someone lays a second
brick, and someone else lays a third.
Someone notices that your original
brick is crooked, so they adjust it.
At its core, Git provides distributed
access to a range of collaborators. No
one really owns the pyramid — after
every brick is laid, it belongs to every-
one.
Git development goes back to April
2005, when a number of developers of
the Linux kernel walked away from
BitKeeper, a proprietary source-con-
trol management (SCM) system that
they had formerly used to maintain
the project. The copyright holder of
BitKeeper, Larry McVoy, had with-
drawn free use of the product after
claiming that Andrew Tridgell had
reverse-engineered the BitKeeper
protocols.
You can look up the details of how
these early software engineers fought
back and forth, and what came out
of all their dealings with each other.
It’s good, quality reading enjoyment,
albeit in retrospect, though these con-
flicts shaped the current development
landscape, many of them now seem
more like quibbles than battles — pet-
ty and small.
Linux godfather Linus Torvalds
wanted a distributed system that he
could use like BitKeeper, but none
of the available free systems met his
needs. He wanted a way he could get
others to help and collaborate.
Torvalds cited an example of a
source-control management system
needing 30 seconds to apply a patch


and update all associated metadata
and noted that this would not scale
to the needs of Linux kernel devel-
opment, where synchronizing with
fellow maintainers could require 250
such actions at once.
The development of Git thus began
on April 3, 2005. The first merge of
multiple branches took place on April
18, 2005, marking the first time that
multiple code bases and collaboration
took place — a historic first that prob-
ably seemed like just another April
day. Torvalds turned over mainte-
nance on July 26, 2015 to Junio Hama-
no, a major contributor to the project.
Hamano was responsible for the 1.0
release on Dec. 21 of the same year
and remains the project’s maintainer.

Torvalds quipped about the name
“Git” — a British slang word with
the same essential meaning as “idi-
ot” — “I’m an egotistical bastard, and
I name all my projects after myself.
First Linux, now Git.” Its man page
describes Git as “the stupid content
tracker.” The readme file of the source
code elaborates further:
The name “git” was given by Linus
Torvalds when he wrote the very first ver-
sion. He described the tool as “the stupid
content tracker” and the name as (depend-
ing on your way):


  • stupid. contemptible and despi-
    cable. simple. Take your pick from
    the dictionary of slang.

  • “global information tracker”:
    you’re in a good mood, and it
    works for you. Angels sing, and a
    light suddenly fills the room.


In physical terms,


suppose that you want to


build a pyramid, so you


lay a brick down. Some-


one lays a second brick,


and someone else lays a


third. Someone notices


that your orig-


inal brick is


crooked, so


they adjust it.

Free download pdf