Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
ファイルを作らずGitにCommit!
Search
Takeru Hayasaka
September 28, 2018
Programming
350
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
ファイルを作らずGitにCommit!
タガヤスその7で話したLT資料です
Takeru Hayasaka
September 28, 2018
More Decks by Takeru Hayasaka
See All by Takeru Hayasaka
[GoCon2026] When Goroutines Are Not Enough: Runtime Locality in High-Throughput Go
takehaya
6
1.6k
XDPerf: A High-Performance Traffic Generator Built with WASM and eBPF
takehaya
1
290
Go Conference 2025: Goで体感するMultipath TCP ― Go 1.24 時代の MPTCP Listener を理解する
takehaya
10
3.1k
eBPF at Mobile Network Data Plane
takehaya
0
270
Programmable Bandwidth Management with eBPF
takehaya
2
530
eBPF Deep Dive: Architecture and Safety Mechanisms
takehaya
14
3.4k
Perlで始めるeBPF: 自作Loaderの作り方 / Getting started with eBPF in Perl_How to create your own Loader
takehaya
3
4.8k
Exploring XDP: Fundamentals and Real-World Implementations in Mobile Network Data Plane
takehaya
1
5.4k
JANOG53 LT 自作k6 Extension利用した NFVへの負荷計測手法の紹介
takehaya
0
1.2k
Other Decks in Programming
See All in Programming
Can LLMs Replicate 4 Years of Compose Migration? Exploring the boundaries of automation with 279 XML files from a real product
makun
0
130
ハーネス設計入門 〜プロンプト、コンテキストの次〜
kinopeee
55
36k
アクセシビリティから考える情報設計
high_g_engineer
0
350
巨大モノリシックアプリ モダン化大作戦
ktcryomm
0
350
The Good Stuff, Not the Slop: Engineering High-Quality Android Apps with Modern AI Tooling
danybony
1
230
Go × SIMDで高速化するベクトル検索 ~ルーフラインモデルでSIMDが効く境界を探れ! ~
po3rin
1
180
AIを上手に使っていこうとしたら越境せざるを得なくなった話 〜実践1年で見えた境界を越えなければならない理由と進め方〜 / Crossing borders with AI
tomoyakitaura
4
1.1k
tsc.rip を支える技術 / Kyoto.なんか #8
susisu
0
4.4k
Webの地図
yosuke_furukawa
PRO
4
3.6k
AIと壁打ちしながら進めるコスト管理
fufuhu
2
2k
Family mrubyの進捗
kishima
1
110
Hello, Hiroshima Geospatial Data! — Exploring DoboX with Python
ra0kley
0
180
Featured
See All Featured
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
230
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.6k
Evolving SEO for Evolving Search Engines
ryanjones
0
280
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
380
Prompt Engineering for Job Search
mfonobong
0
450
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
240
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
600
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
340
SEO for Brand Visibility & Recognition
aleyda
0
4.7k
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
970
Docker and Python
trallard
47
4.2k
Abbi's Birthday
coloredviolet
3
9.9k
Transcript
ϑΝΠϧΛ࡞Βͣ(JU ʹ$PNNJU 5BLFSV)BZBTBLB !UBLFNJP*0 ʢλΨϠεͦͷ̓ʣ 1
ࣄલௐࠪ
(JUͬͨ͜ͱ͋Δਓ ڍखʂ
(JUͷϓϩڍखʂ
ϓϩͷํͪΐͬͱͷ ٳܜʹͳΓ·͢ɾɾɾ
ϓϩ͡Όͳ͍ͷͰؒҧ ͑ͨΒ͝ΊΜͳ͍͞ʼʻ
XIPBNJ w ͔͚ͨ͞Δ !UBLFNJP*0 w ౦ֶӃେֶֶ෦ w ΠϯϑΟχοτϧʔϓͰΞϧόΠτΛͯ͠Δ w
TFNBOUJDTJOGPTFDOFUXPSLʹڵຯ͕͋Γ·͢ w དྷ݄ੜ ͰͳͷͰਓੜͷઌഐํ֤Ґʹ͓͖·͠ ͯඒຯ͍͓͠ञͷҿΈ͔ͨΛืूͯ͠·͢
ΠϯϑΟχοτϧʔϓઋͰ(JU͕ ͑ΔֶੜΞϧόΠτΛืूͯ͠·͢ $.
ۙگ
(JU$IBMMFOHF ͰҐʹͳͬͨ
(JU$IBMMFOHFͱʁ w NJYJ͕ओ࠵ͯ͠Δ(JUʹؔ͢ΔίϯςετɽֶੜΦϯϦʔ w HJUϦϙδτϦʹઃ͚ͨΛνʔϜϫʔΫͰղܾ͍ͯ͠ ͘ڝٕܕͷٕज़Πϕϯτ w ҰԠશࠃ͔ΒॻྨநબͰબΕͨਓͷΈ͕ࢀՃͰ͖ΔΠ ϕϯτɽ
ڝٕڥ w қ͕̍d·Ͱ͋ΓɼϖΞͰߦ͏νʔϜઓͩͬͨ w νʔϜͦͷͰ·͞Εͨॳର໘ͷਓ w ͱΓ͋͑ͣΥʔϜΞοϓ͕ͯΒқͷ͔Β ղ͍͍ͯͬͨɽ w ղ͍ͨΒHJUIVCʹQVTI
w $*ϕʔεͰΛΦʔτδϟονͯ͠Δ
ྫʢงғؾʣ w ίϯϑϦΫτΛͨ͠Γ w ഁଛͨ͠ϑΝΠϧΛम෮ͨ͠ΓɾɾɾͳͲ w ৄ͘͠ެ։ใͰͳ͍ͷͰݴ͑ͳ͍ͷͰ͝ΊΜͳ ͍͞ʼʻ
େձͷงғؾ w ϖΞͰղ͍ͯΔͷͰNBTUFSʹQVTIGΛ͕ͪ͠
େձͷงғؾ w ͓ޓ͍ղ͖ऴΘͬͨͱࢥͬͯΔ
݁Ռ
ޙஊ wޙ͋ΔϦϙδτϦͰʮ13ͷαΠζσΧΠʯͱ ΩϨΒΕͨ wීஈΘͳ͍ΈͦͬͨͷͰઋӺΓա͝͠ ͯԬͰҰധͯ࢝͠ൃͰେֶʹΤΫετϦʔϜొ ߍΛ͢Δ͜ͱʹͳͬͨ
ຊ
ϑΝΠϧΛ࡞Βͣ(JUʹ $PNNJU
Ͱ͖ΔΜͰ͢✊
(JU0CKFDU w HJUJOJUΛͯ͠IPHF͢Δͱੜ·ΕΔHJUPCKFDUTͷதͷ w CMPC w ϑΝΠϧσʔλΛදݱͯ͠Δ w 5SFF w
ϑΥϧμߏΛදݱͯ͠Δ w $PNNJU w USFFͷࢀরͱίϛοτϢʔβʔͱλΠϜελοϓͷදݱ
$PNNJUͷ࡞ΒΕํ wίϛοτͱ͍͏ͷzCMPCzͱ͍͏σʔλ͕zUSFFz ʹඥ͍ͮͯΔ w$PNNJUPCKFDU͕USFFಉ࢜ͷίωΫγϣϯΛҙຯ ͯ͠Δ
None
CMPCͱUSFFͷؔਤ
$PNNJUͱUSFFͷؔਤ
࣮ࡍʹͬͯݟͨ
w ϑΝΠϧΛ࡞Δ w HJUJOJU͢Δ w 0CKFDUͷதQBDL JOGPͷΈ͕ݱஈ֊ʹଘࡏͯ͠Δ $mkdir fugafuga $cd
fugafuga/ $git init > Initialized empty Git repository in fugafuga/.git/ find .git/objects/ > .git/objects/ > .git/objects//pack > .git/objects//info
w HJUIBTIPCKFDUʹύΠϓͯ͠DSFBUFEBUB w PCKFDU*%Λܭࢉͯ͠ϑΝΠϧ͔ΒCMPCΛ࡞͢ΔίϚϯυ w HJUDBUpMFͰνΣοΫɽ͔֬ʹग़དྷͯΔ $ echo 'create data'
| git hash-object -w --stdin > 070f3bd01632c945394b3aac7187a9d91ca4816a $ ls $ git cat-file -p 070f > create data
w HJUVQEBUFJOEFY w XPSLJOHUSFFͷϑΝΠϧΛJOEFYʹొ͢Δ w DINPEͱಉ͡ײ͡ w UFTUUYUͱ͍͏ՍۭͷσʔλΛೖΕͯΔʢଘࡏͯ͠ͳ͍ʣ git update-index
--add --cacheinfo 100644 070f3bd01632c945394b3aac7187a9d91ca4816a test.txt
w HJUXSJUFUSFFΛ͏ w 4UBHFJOHΤϦΞΛUSFFPCKFDUʹॻ͖ग़͢͜ͱ͕Ͱ͖Δ w ·ͩUSFF͕ͳ͍ͱ͖ʹࣗಈͰJOEFY͔ΒUSFFPCKFDUΛ࡞Δ w HJUDBUpMFͰνΣοΫɽ͔֬ʹग़དྷͯΔ $ git
write-tree > c47b19c8b7a3b7724138f73e4cd53efa0f1e9595 $ git cat-file -p c47b > 100644 blob 070f3bd01632c945394b3aac7187a9d91ca4816a test.txt
w DPNNJUUSFFʹύΠϓͯ͠pSTUDPNNJU w $PNNJUΛ࡞ΔίϚϯυ w HJUDBUpMFͰνΣοΫɽ͔֬ʹग़དྷͯΔ $ echo 'first commit'
| git commit-tree c47b > 9ee76e488f2882f12e5fb15d8016e80946ff48dd $ git cat-file -p 9ee76e488f2882f12e5fb15d8016e80946ff48dd > tree c47b19c8b7a3b7724138f73e4cd53efa0f1e9595 > author TakeruHayasaka <
[email protected]
> 1538081510 +0900 > committer TakeruHayasaka <
[email protected]
> 1538081510 +0900 > first commit
·ͱΊ w ίϛοτͱ͍͏ͷzCMPCzͱ͍͏σʔλ͕zUSFFzʹඥ͍ͮͯΔ w $PNNJUPCKFDU͕USFFಉ࢜ͷίωΫγϣϯΛҙຯͯ͠Δ w (JUͱ͍͏ͷ࣮ϨΠϠʔͳදݱΛநԽͯͯ͠ීஈΒ ͍ͬͯΔɽ
w IUUQTHJUTDNDPNCPPLKBW (JU&"&&&# (JU&""&&#&" &"'& w IUUQUBLFJPIBUFOBCMPHDPNFOUSZ ϦϑΝϨϯε