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
Raw Git
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Scott Sanders
May 05, 2014
Programming
280
2
Share
Raw Git
A quick presentation covering some of the basics of working with Git objects in Ruby.
Scott Sanders
May 05, 2014
More Decks by Scott Sanders
See All by Scott Sanders
Brubeck - A high-performance statsd-compatible aggregation daemon
jssjr
1
300
The Lifecycle of an Outage
jssjr
7
1.5k
Disaster Porn Lightning Talk
jssjr
0
400
Other Decks in Programming
See All in Programming
Inspired By RubyKaigi (EN)
atzzcokek
0
120
Make SRE Operations Easier with Azure SRE Agent
kkamegawa
0
940
GitHub Copilot CLIのいいところ
htkym
2
1.1k
誰も頼んでない機能を出荷した話
zekutax
0
140
Copilot CLI の継戦能力を高める コンテキスト管理
nozomutu
1
1k
~ 秘伝のタレ化した『神スプシ』と戦う ~ 関数型パラダイムで壊れない仕組みへ
h0r15h0
1
130
The Arts and Crafts of Work in the AI Era — Toward Mastery in Software Development
kuranuki
1
570
Transactional Change Stream Processing With Debezium and Apache Flink
gunnarmorling
1
130
気づいたらRubyで100作品 ー クリエイティブコーディングが生活の一部になるまで / 100 Ruby Sketches Later: How Creative Coding Became Part of My Life
chobishiba
2
420
AIエージェントと協働するCLI開発 — BunとOpenClawで学んだこと
yoshikouki
1
220
AIエージェントの隔離技術の徹底比較
kawayu
0
430
Swiftのレキシカルスコープ管理
kntkymt
0
200
Featured
See All Featured
Visualization
eitanlees
151
17k
Leo the Paperboy
mayatellez
7
1.8k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.9k
How GitHub (no longer) Works
holman
316
150k
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
5.8k
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
380
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.7k
Building AI with AI
inesmontani
PRO
1
1k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.2k
From π to Pie charts
rasagy
0
190
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
170
エンジニアに許された特別な時間の終わり
watany
107
240k
Transcript
Raw Git Underneath the porcelain and plumbing
None
What is git? • Distributed Version Control System • A
content addressable filesystem • OMG It’s full of SHA1 hashes! • With some reference logs to these hashes That’s pretty much it...
git in 15 seconds
None
None
None
None
None
None
wtf just happened?
None
so many files. ermahgerd.
None
its just a graph, really
with three main objects
“files” blobs
“directories” trees
“references to trees” commits
and a reference log
None
… because its easy let’s do this by hand
None
None
None
“blob” SP <length> NUL
None
None
None
None
None
None
None
None
None
does git work now? we made a blob!
None
None
None
NOPE!
we need our tree
“tree” SP <length> NUL <mode> <name> NUL <sha>
None
None
None
None
None
None
None
None
None
does git work yet? now we have a tree!
None
None
None
NOPE!
still need the commit
“commit” SP <length> NUL “tree <sha>” LF “author <name> <timestamp>”
LF “committer <name> <timestamp>” LF LF “<message>” LF
None
None
None
None
None
None
None
None
lol typo
None
does git work now?!? ok, we have our objects
None
None
None
NOPE!
what gives?
AKA Let’s glue it all together that pesky reflog
None
None
None
That’s it!
None
None
None
None
None
git is really simple
and extremely flexible
go build your own workflow!
and don’t be scared to look under the hood
Thanks!
github.com/jssjr @scott_sanders