Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Quick Git Talk
Search
Randall Hunt
December 06, 2014
Programming
0
140
Quick Git Talk
Randall Hunt
December 06, 2014
Tweet
Share
More Decks by Randall Hunt
See All by Randall Hunt
AWS Lambda Crash Course
ranman
1
560
MongoDB 2.8 and MongoDB on AWS
ranman
0
120
ICEE3 Keynote
ranman
0
150
Quick Git Talk
ranman
0
61
A Century Of Weather Data - Midwest.io
ranman
0
73
Other Decks in Programming
See All in Programming
実践AIチャットボットUI実装入門
syumai
7
2.4k
Reduxモダナイズ 〜コードのモダン化を通して、将来のライブラリ移行に備える〜
pvcresin
2
660
Чего вы не знали о строках в Python – Василий Рябов, PythoNN
sobolevn
0
150
なぜあの開発者はDevRelに伴走し続けるのか / Why Does That Developer Keep Running Alongside DevRel?
nrslib
2
330
iOSエンジニア向けの英語学習アプリを作る!
yukawashouhei
0
150
プロダクト開発をAI 1stに変革する〜SaaS is dead時代で生き残るために〜 / AI 1st Product Development
kobakei
0
440
プログラミングどうやる? ~テスト駆動開発から学ぶ達人の型~
a_okui
0
190
アメ車でサンノゼを走ってきたよ!
s_shimotori
0
120
Swiftビルド弾丸ツアー - Swift Buildが作る新しいエコシステム
giginet
PRO
0
1.6k
AIで開発生産性を上げる個人とチームの取り組み
taniigo
0
130
After go func(): Goroutines Through a Beginner’s Eye
97vaibhav
0
220
気づいて!アプリからのSOS 〜App Store Connect APIで始めるパフォーマンス健康診断〜
waka12
0
260
Featured
See All Featured
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
2.6k
Six Lessons from altMBA
skipperchong
28
4k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
Into the Great Unknown - MozCon
thekraken
40
2.1k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.2k
The Language of Interfaces
destraynor
162
25k
The Power of CSS Pseudo Elements
geoffreycrofte
79
6k
Making Projects Easy
brettharned
118
6.4k
Context Engineering - Making Every Token Count
addyosmani
4
160
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
36
2.5k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
114
20k
Transcript
Learn You Some Git Not Your Average Git Talk
GIT IS NOT REVISION CONTROL SOFTWARE
GIT is a filesystem
None
None
Content Addressable Filesystem
"Who are you and why are you still talking?"
•I am called Randall •I know more about git than
you •Probably... maybe...
None
•I am called Randall •I know more about git than
you •Probably... maybe... •I work at AWS •I tweet @jrhunt •I wrote gitshots •I write great commit messages
s
None
•I am called Randall •I know more about git than
you •Probably... maybe... •I work at AWS •I tweet @jrhunt •I wrote gitshots •I write great commit messages •8 major patches to GIT •All of them rejected.
HALP! Wat is git?
GIT IS MAGIC •Easy Context Switching •Role-based codelines •Feature based
workflow •Easy Experimentation
Distributed Version Control
None
None
None
working directory git add -p files staging area
git commit -m "holla" staging area git database
Git Saves You From Yourself
None
DEMO
DO YOUR WORK IN BRANCHES!
NO REALLY. git checkout -b feature
Content Addressable Filesystem
git hash-object refs.c sha1(a77458f2f6eb108a90a1cf3d2cc4a771549c05f9)
Your Content Is Your Address
SHA1 1. Add Data 2. Add More Data 3. Mix
it all around 4. Get a magic number "unique" (mostly) 160 bits of ADDRESS MATH!
BRANCHES ARE REFERENCES TO COMMITS
COMMITS ARE POINTERS TO TREES
TREES ARE POINTERS TO TREES AND BLOBS
BLOBS ARE ZLIB COMPRESSED FILES
None
DIRECTED ACYCLIC GRAPH
None
RECAP • Commits -> N pointers to parents, date, metadata
• Trees -> Point to trees where leaf nodes are blobs • Blobs -> ZLIB compressed files RECAP RECAP
THIS IS NOT A TOILET
None
commit, branch, log, diff, add, etc.
None
hash-object, cat-file, ls-tree, (un)pack
None
GIT QUESTIONS?
I GIT ANSWERS