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
Git の内部データ構造
Search
Shuhei Kagawa
August 20, 2015
Programming
2
2k
Git の内部データ構造
Git がどのようにデータを保持しているかについて解説します。
Shuhei Kagawa
August 20, 2015
Tweet
Share
More Decks by Shuhei Kagawa
See All by Shuhei Kagawa
Profiling Node.js apps on production
shuhei
0
920
Building a Pixel Art Editor with Elm
shuhei
1
810
Redux Middleware Wars (Japanese)
shuhei
8
1.9k
Redux Middleware Wars (English)
shuhei
0
180
Draw Animated Chart on React Native
shuhei
0
8.9k
Angular 2 Offline Compiler
shuhei
0
5.4k
Weird Attractors
shuhei
0
890
Angular 2 @ JS Ojisan #6-3
shuhei
1
3k
Introduction to Angular 2
shuhei
2
160
Other Decks in Programming
See All in Programming
AIを駆使して新しい技術を効率的に理解する方法
nogu66
1
610
The Missing Link in Angular's Signal Story: Resource API and httpResource
manfredsteyer
PRO
0
120
Designing Repeatable Edits: The Architecture of . in Vim
satorunooshie
0
310
Claude Code on the Web を超える!? Codex Cloud の実践テク5選
sunagaku
0
510
仕様がそのままテストになる!Javaで始める振る舞い駆動開発
ohmori_yusuke
6
3.4k
Chart.jsで長い項目を表示するときのハマりどころ
yumechi
0
100
自動テストのアーキテクチャとその理由ー大規模ゲーム開発の場合ー
segadevtech
2
970
モデル駆動設計をやってみよう Modeling Forum2025ワークショップ/Let’s Try Model-Driven Design
haru860
0
120
チーム開発の “地ならし"
konifar
7
3.9k
Inside of Swift Export
giginet
PRO
1
550
高単価案件で働くための心構え
nullnull
0
130
Verilator + Rust + gRPC と Efinix の RISC-V でAIアクセラレータをAIで作ってる話 RTLを語る会(18) 2025/11/08
ryuz88
0
350
Featured
See All Featured
4 Signs Your Business is Dying
shpigford
186
22k
It's Worth the Effort
3n
187
28k
Context Engineering - Making Every Token Count
addyosmani
9
380
Imperfection Machines: The Place of Print at Facebook
scottboms
269
13k
Building Applications with DynamoDB
mza
96
6.7k
The Invisible Side of Design
smashingmag
302
51k
The World Runs on Bad Software
bkeepers
PRO
72
12k
Writing Fast Ruby
sferik
630
62k
Agile that works and the tools we love
rasmusluckow
331
21k
Rails Girls Zürich Keynote
gr2m
95
14k
Building a Scalable Design System with Sketch
lauravandoore
463
33k
Stop Working from a Prison Cell
hatefulcrawdad
272
21k
Transcript
(JUͷ෦σʔλߏ 4IVIFJ,BHBXB .5FDI5BML
MTHJU '&5$)@)&"% )&"% DPOpH EFTDSJQUJPO IPPLT JOEFY JOGP MPHT PCKFDUT
QBDLFESFGT SFGT
USFFHJUPCKFDUT HJUPCKFDUT ᵓᴷᴷ ᴹᵋᴷᴷDGBFCCFG⒎DGFCGC ᵓᴷᴷ ᴹᵋᴷᴷCECBFDBFFFD⒎FG ᴹᵋᴷᴷEECCFBFECFDEB ᵓᴷᴷF ᴹᵋᴷᴷFFBFBEGGFCDFGD ᵓᴷᴷFC
ᴹᵋᴷᴷGGGFGEGECBBCBBGCFBCF ᵓᴷᴷJOGP ᵋᴷᴷQBDL
HJUPCKFDUT w ϑΝΠϧγεςϜΛར༻ͨ͠,FZ7BMVF4UPSFɻ w Ωʔͷ4)"ϋογϡɻ্ܻʢCZUFʣ͕ σΟϨΫτϦ໊ɺΓ͕ϑΝΠϧ໊ɻ DGBFCCFG⒎DGFCGC σΟϨΫτϦ໊ CZUF
ϑΝΠϧ໊ CZUF
PCKFDUͷछྨ CMPC USFF DPNNJU ϑΝΠϧͷத σΟϨΫτϦ ͷΑ͏ͳͷ ͍ΘΏΔίϛοτ
PCKFDUͷߏ CMPC a QVUT)FMMP 8PSMEaO PCKFDUͷ छྨ ۭന αΠζ
ψϧ จࣈ σʔλ 4)"ϋογϡ ϑΝΠϧ໊ ϑΝΠϧͷத [MJCѹॖ ϔομ
HJUDBUpMFQTIBIBTI
CMPC QVUT)FMMP 8PSMEaO w ϑΝΠϧͷதʮ͚ͩʯ͍࣋ͬͯΔɻ w ϑΝΠϧͷ໊લ͍࣋ͬͯͳ͍ɻ
USFF IFMMPKTa4)"ϋογϡʢόΠφϦʣ IFMMPSCa4)"ϋογϡʢόΠφϦʣ w USFFͱCMPCͷҰཡɻ w ֤ߦ໊લϞʔυʢύʔϛογϣϯʣΛ͍࣋ͬͯΔɻ w ຊվߦͳ͠ɻ
DPNNJU USFFFBGD⒎FBBDFDDGEF BVUIPS4IVIFJ,BHBXBTIVIFJLBHBXB!HNBJMDPN DPNNJUUFS4IVIFJ,BHBXBTIVIFJLBHBXB!HNBJMDPN )FMMP 8PSME w USFFͷࢀরΛҰ͍ͭ࣋ͬͯΔɻ
w ͋ͱॻ͍ͨਓͱίϛοτͨ͠ਓɺίϛοτϝοηʔδɻ
֤PCKFDUͷؔ CMPC USFF DPNNJU CMPC IFMMPSC (FNpMF *OJUJBMDPNNJU
֤PCKFDUͷؔ CMPC USFF DPNNJU DPNNJU USFF CMPC IFMMPSC
(FNpMF USFF MJC IFMMPSC (FNpMF *OJUJBMDPNNJU IFMMPSCΛMJC ʹೖΕͨ
֤PCKFDUͷؔ CMPC USFF DPNNJU DPNNJU DPNNJU USFF
USFF CMPC IFMMPSC (FNpMF USFF CMPC MJC MJC IFMMPSC (FNpMF (FNpMF *OJUJBMDPNNJU IFMMPSCΛMJC ʹೖΕͨ ར༻ϥΠϒϥϦ Λߋ৽
Θ͔Δ͜ͱ w DPNNJU͚ͩͰͳ͘CMPC USFF4)"ϋογϡ Λ͍࣋ͬͯΔɻ w มΘΒͳ͍CMPC USFFUSFF DPNNJUؒͰڞ༗͞Ε Δɻ
w ϑΝΠϧɾσΟϨΫτϦ໊CMPC USFFࣗͰͳ ͘ͷUSFF͕͍࣋ͬͯΔɻ
HJUSFGT w HJUSFGTIFBETNBTUFSͱ͔HJUSFGTUBHTWͱ͔ɻ w DPNNJUͷ4)"ϋογϡ͕ॻ͍ͯ͋Δ͚ͩɻ
HJUJOEFY w ࣍ͷDPNNJUʢͷUSFFʣΛ࡞ΔͨΊͷใ͕Ωϟογϡ͞Ε͍ͯΔɻ w มߋ͞ΕͨϑΝΠϧ͚ͩͰͳ͘શϑΝΠϧ͕ೖ͍ͬͯΔɻ w HJUMTpMFTͰݟ͑ͳ͍͕ɺ࠷ऴߋ৽࣌ͳͲೖ͍ͬͯΔɻ HJUMTpMFTTUBHF DDGEFECGCDBFDBECDCIFMMPKT D⒎BBFGDEEBGCE
IFMMPSC
ͦ͏͍͑ɾɾɾ w େ͖ͳϑΝΠϧʹҰߦͨ͠ΒɺผͷCMPC͕Ͱ͖ Δɻ w ͋Εɺ(JUͬͯϑΝΠϧΛࠩͰ࣋ͬͯͳ͍ͷʁ
HJUHD
CFGPSF HJUPCKFDUT ᵓᴷᴷ ᴹᵋᴷᴷDGBFCCFG⒎DGFCGC ᵓᴷᴷ ᴹᵋᴷᴷDEBGEBFGDE ᵓᴷᴷ ᴹᵋᴷᴷCECBFDBFFFD⒎FG ᵓᴷᴷC ᴹᵋᴷᴷGFGFCECBFFGBFC
ᵓᴷᴷDD ᴹᵋᴷᴷGEFECGCDBFDBECDC ᵓᴷᴷE ᴹᵋᴷᴷGCDDEDEGDGFG ᵓᴷᴷEC ᴹᵋᴷᴷEECCFBFECFDEB ᵓᴷᴷF ᴹᵋᴷᴷFFBFBEGGFCDFGD ᵓᴷᴷFB ᴹᵋᴷᴷGD⒎FBBDFDDGEF ᵓᴷᴷFC ᴹᵋᴷᴷGGGFGEGECBBCBBGCFBCF ᵓᴷᴷJOGP ᵋᴷᴷQBDL HJUPCKFDUT ᵓᴷᴷJOGP ᴹᵋᴷᴷQBDLT ᵋᴷᴷQBDL ᵓᴷᴷQBDLFDGDGBFBBGBCFECFGGJEY ᵋᴷᴷQBDLFDGDGBFBBGBCFECFGGQBDL BGUFS
1BDLpMF w JEYͱQBDLͷϖΞɻQBDL͕ຊମͰJEY͕ΠϯσοΫ εɻ w ෳͷPCKFDU͕٧Ίࠐ·Ε͍ͯΔɻ w ඞཁʹԠͯ͡CMPCΛࠩͰอ࣋ɻ w HJUWFSJGZQBDLWHJUPCKFDUTQBDLQBDLYYYJEYͰϦε
τ͕ݟΕΔɻ
QMVNCJOHDPNNBOET w HJUDBUpMF w HJUMTUSFF HJUNLUSFF HJUDPNNJUUSFF w HJUSFBEJOEFY HJUXSJUFJOEFY
HJUDPNNJUJOEFY
ࢀߟ w 1SP(JU(JU*OUFSOBMT IUUQTHJUTDNDPNCPPLFOW w (JU$PNNVOJUZ#PPL*OUFSOBMTBOE1MVNCJOH IUUQTTDIBDPOHJUIVCJPHJUCPPLJOEFYIUNM w HJU%PDVNFOUBUJPOUFDIOJDBM IUUQTHJUIVCDPNHJUHJUUSFFNBTUFS%PDVNFOUBUJPOUFDIOJDBM