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
900
Building a Pixel Art Editor with Elm
shuhei
1
790
Redux Middleware Wars (Japanese)
shuhei
8
1.9k
Redux Middleware Wars (English)
shuhei
0
180
Draw Animated Chart on React Native
shuhei
0
8.8k
Angular 2 Offline Compiler
shuhei
0
5.4k
Weird Attractors
shuhei
0
880
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に安心して任せるためにTypeScriptで一意な型を作ろう
arfes0e2b3c
0
340
管你要 trace 什麼、bpftrace 用下去就對了 — COSCUP 2025
shunghsiyu
0
390
それ CLI フレームワークがなくてもできるよ / Building CLI Tools Without Frameworks
orgachem
PRO
17
3.8k
DataformでPythonする / dataform-de-python
snhryt
0
160
画像コンペでのベースラインモデルの育て方
tattaka
3
1.6k
ライブ配信サービスの インフラのジレンマ -マルチクラウドに至ったワケ-
mirrativ
1
150
STUNMESH-go: Wireguard NAT穿隧工具的源起與介紹
tjjh89017
0
350
バイブコーディング超えてバイブデプロイ〜CloudflareMCPで実現する、未来のアプリケーションデリバリー〜
azukiazusa1
3
810
Flutterと Vibe Coding で個人開発!
hyshu
1
250
0から始めるモジュラーモノリス-クリーンなモノリスを目指して
sushi0120
0
280
コーディングは技術者(エンジニア)の嗜みでして / Learning the System Development Mindset from Rock Lady
mackey0225
2
420
AIのメモリー
watany
13
1.4k
Featured
See All Featured
Measuring & Analyzing Core Web Vitals
bluesmoon
8
550
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
283
13k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.5k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
53
2.9k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.8k
Statistics for Hackers
jakevdp
799
220k
A designer walks into a library…
pauljervisheath
207
24k
Building Flexible Design Systems
yeseniaperezcruz
328
39k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Facilitating Awesome Meetings
lara
54
6.5k
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