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
870
Building a Pixel Art Editor with Elm
shuhei
1
770
Redux Middleware Wars (Japanese)
shuhei
8
1.8k
Redux Middleware Wars (English)
shuhei
0
170
Draw Animated Chart on React Native
shuhei
0
8.8k
Angular 2 Offline Compiler
shuhei
0
5.4k
Weird Attractors
shuhei
0
860
Angular 2 @ JS Ojisan #6-3
shuhei
1
3k
Introduction to Angular 2
shuhei
2
160
Other Decks in Programming
See All in Programming
SwiftDataのカスタムデータストアを試してみた
1mash0
0
130
GitHub Copilot for Azureを使い倒したい
ymd65536
1
210
20250429 - CNTUG Meetup #67 / DevOps Taiwan Meetup #69 - Deep Dive into Tetragon: Building Runtime Security and Observability with eBPF
tico88612
0
130
Building Scalable Mobile Projects: Fast Builds, High Reusability and Clear Ownership
cyrilmottier
2
320
サービスレベルを管理してアジャイルを加速しよう!! / slm-accelerate-agility
tomoyakitaura
1
190
fieldalignmentから見るGoの構造体
kuro_kurorrr
0
120
Laravel × Clean Architecture
bumptakayuki
PRO
0
120
RubyKaigi Dev Meeting 2025
tenderlove
1
540
AHC045_解説
shun_pi
0
560
Instrumentsを使用した アプリのパフォーマンス向上方法
hinakko
0
130
Road to RubyKaigi: Making Tinny Chiptunes with Ruby
makicamel
4
490
エンジニア向けCursor勉強会 @ SmartHR
yukisnow1823
2
9k
Featured
See All Featured
How STYLIGHT went responsive
nonsquared
100
5.5k
We Have a Design System, Now What?
morganepeng
52
7.5k
Done Done
chrislema
184
16k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.4k
Unsuck your backbone
ammeep
670
57k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
136
33k
Mobile First: as difficult as doing things right
swwweet
223
9.6k
Practical Orchestrator
shlominoach
187
11k
Optimising Largest Contentful Paint
csswizardry
37
3.2k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
52
2.4k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.7k
Faster Mobile Websites
deanohume
306
31k
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