Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Becoming the Mario Bros of Git
Search
Guilherme Paixão
November 06, 2018
Programming
0
50
Becoming the Mario Bros of Git
Understand how to work the plumbing layer
Guilherme Paixão
November 06, 2018
Tweet
Share
More Decks by Guilherme Paixão
See All by Guilherme Paixão
Building container using Go
guiferpa
0
39
Other Decks in Programming
See All in Programming
ソフトウェア設計の課題・原則・実践技法
masuda220
PRO
26
22k
AIコーディングエージェント(Manus)
kondai24
0
160
手軽に積ん読を増やすには?/読みたい本と付き合うには?
o0h
PRO
1
170
tparseでgo testの出力を見やすくする
utgwkk
1
190
モデル駆動設計をやってみようワークショップ開催報告(Modeling Forum2025) / model driven design workshop report
haru860
0
260
ハイパーメディア駆動アプリケーションとIslandアーキテクチャ: htmxによるWebアプリケーション開発と動的UIの局所的適用
nowaki28
0
400
AIコーディングエージェント(skywork)
kondai24
0
150
Cap'n Webについて
yusukebe
0
130
FluorTracer / RayTracingCamp11
kugimasa
0
220
認証・認可の基本を学ぼう前編
kouyuume
0
190
チームをチームにするEM
hitode909
0
300
AIエージェントを活かすPM術 AI駆動開発の現場から
gyuta
0
370
Featured
See All Featured
Side Projects
sachag
455
43k
How to Ace a Technical Interview
jacobian
280
24k
Producing Creativity
orderedlist
PRO
348
40k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
7.8k
KATA
mclloyd
PRO
32
15k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.3k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.8k
Code Reviewing Like a Champion
maltzj
527
40k
It's Worth the Effort
3n
187
29k
Raft: Consensus for Rubyists
vanstee
141
7.2k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
390
Transcript
Becoming the Mario Bros of Git Understand how to work
the plumbing layer 1 By Guilherme Paixão
Layers !2
Porcelain All the commands that make your life easier (add,
checkout, commit, branch…) 3
Plumbing All the commands that are used to make your
life easier (hash-object, cat-file, commit-tree, update-index…) 4
Components !5
Blob • Smaller component of git, all start from one
blob • It holds every state about one content • Its representation is at .git/objects/{name} !6
Blob !7
Index Staged area 8
Index !9
Tree • One place for saved blobs and trees •
Every tree is a piece of index state !10
Tree !11
Commit • Reference a tree • It has friendly log
as author message and date !12
Commit !13
Branches 14
!15
BranchesRefs !16
Heads A ref that points to one commit 17
Heads !18
Tags A immutable ref that points to one commit 19
Tags !20
Fonts • Talk #2 - Digging deep into Git <Jonathan
Lima> • Git Plumbing and Porcelain <Jonathan Jackson> • Git Internals - Plumbing and Porcelain • Plumber project !21