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
GitHubハンズオン中級
Search
hikarut
April 28, 2019
Programming
0
130
GitHubハンズオン中級
hikarut
April 28, 2019
Tweet
Share
More Decks by hikarut
See All by hikarut
ビジネスパーソンがSQLを学ぶべき3つの理由とおすすめのSQL学習方法
hikarut
1
130
SQLを使ったデータ分析事例紹介〜2つの事例から学ぶSQLの活用方法〜
hikarut
3
310
データ分析力を高めるSQL研修『SQL Everyone』のご紹介【SQL勉強会 #3】
hikarut
1
350
データ分析内製化に向けた人材育成サービス『SQL Everyone』
hikarut
1
1.4k
データ分析のためのSQL勉強会 〜実践編〜
hikarut
12
14k
実演で理解するビジネスパーソンのためのSQL入門
hikarut
1
260
データ分析力を高めるビジネスパーソンのためのSQL入門
hikarut
1
540
SQLを活用したデータ分析におけるChatGPTの活用法
hikarut
14
4.9k
『データ分析力を高める ビジネスパーソンのためのSQL入門』出版記念セミナー
hikarut
1
240
Other Decks in Programming
See All in Programming
DevFest - Serverless 101 with Google Cloud Functions
tunmise
0
130
Cloudflare MCP ServerでClaude Desktop からWeb APIを構築
kutakutat
1
630
サーバーゆる勉強会 DBMS の仕組み編
kj455
1
200
どうして手を動かすよりもチーム内のコードレビューを優先するべきなのか
okashoi
3
820
103 Early Hints
sugi_0000
1
330
ChatGPT とつくる PHP で OS 実装
memory1994
PRO
3
160
ISUCON14感想戦で85万点まで頑張ってみた
ponyo877
1
210
テストコード書いてみませんか?
onopon
2
290
テストケースの名前はどうつけるべきか?
orgachem
PRO
1
180
技術的負債と向き合うカイゼン活動を1年続けて分かった "持続可能" なプロダクト開発
yuichiro_serita
0
270
見えないメモリを観測する: PHP 8.4 `pg_result_memory_size()` とSQL結果のメモリ管理
kentaroutakeda
0
890
MCP with Cloudflare Workers
yusukebe
2
270
Featured
See All Featured
Building a Modern Day E-commerce SEO Strategy
aleyda
38
7k
Scaling GitHub
holman
459
140k
Designing Experiences People Love
moore
139
23k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
38
1.9k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
49k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Statistics for Hackers
jakevdp
797
220k
How to train your dragon (web standard)
notwaldorf
88
5.8k
Fireside Chat
paigeccino
34
3.1k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
26
1.9k
KATA
mclloyd
29
14k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
19
2.3k
Transcript
(JU)VCϋϯζΦϯ גࣜձࣾΤοάγεςϜ ߴڮɹޫ ʙதڃʙ
ຊͷલఏ݅ ɾ(JU)VCΞΧϯτΛ͍࣋ͬͯΔ ɾίϚϯυϥΠϯʹΑΔجຊతͳHJUͷૢ ࡞͕Ͱ͖Δ IUUQTHJUIVCDPNFHHTZTUFN(JU)VC)BOETPO-FWFM ࢀߟɿ(JU)VCϋϯζΦϯॳڃ
ΞδΣϯμ ɾࣗݾհ ɾ(JU'MPXͱ(JU)VC'MPX ɾ(JU)VC'MPXΛͬͨ։ൃ ϋϯζΦϯ ɹෳਓͰͷ։ൃํ๏ ɹίϯϑϦΫτͷղফ ɾ(JU)VCΛͬͨ։ൃͷҙ͓͢͢Ί
ΞδΣϯμ ɾࣗݾհ ɾ(JU'MPXͱ(JU)VC'MPX ɾ(JU)VC'MPXΛͬͨ։ൃ ϋϯζΦϯ ɹෳਓͰͷ։ൃํ๏ ɹίϯϑϦΫτͷղফ ɾ(JU)VCΛͬͨ։ൃͷҙ͓͢͢Ί
ࣗݾհɹߴڮޫ ɾ8FCܥاۀࣾһΤϯδχΞϚωʔδϟʔ ɾ1)1 +BWB4DSJQU /PEFKT /VYUKT 4XJGU 3FBDU /BUJWFͳͲ ɾגࣜձࣾΤοάγεςϜ
ෳۀࣾһ IUUQTRJJUBDPNIJLBSVU IUUQTHJUIVCDPNIJLBSVU
ΞδΣϯμ ɾࣗݾհ ɾ(JU'MPXͱ(JU)VC'MPX ɾ(JU)VC'MPXΛͬͨ։ൃ ϋϯζΦϯ ɹෳਓͰͷ։ൃํ๏ ɹίϯϑϦΫτͷղফ ɾ(JU)VCΛͬͨ։ൃͷҙ͓͢͢Ί
(JU'MPXͱ(JU)VC'MPX (JUΛͬͨ։ൃɾӡ༻ϑϩʔ (JU'MPX (JU)VC'MPX ෳਓͰ։ൃ͢ΔࡍʹϧʔϧʹԊͬͯߦ͏ࣄͰԁʹ ։ൃɾӡ༻ΛਐΊΔ͜ͱ͕Ͱ͖Δ ˞্هҎ֎ʹ(JU-BC'MPX(JU'FBUVSF'MPXͳͲ͕͋Γ·͢
(JU'MPX ɾσΟϕϩούʔͷ7JODFOU%SJFTTFO͞Μͷ ʮ"TVDDFTTGVM(JUCSBODIJOHNPEFMʯͱ͍͏ه ࣄ͔Βੜ·ΕͨΞΠσΞ ɾNBTUFS SFMFBTF EFWFMPQ GFBUVSF IPUpYͷͭ ͷϒϥϯνΛ͍͚ͯɺ։ൃΛਐΊΔΓํ
ࢀߟɿ"TVDDFTTGVM(JUCSBODIJOHNPEFM{OWJFDPN IUUQTOWJFDPNQPTUTBTVDDFTTGVMHJUCSBODIJOHNPEFM
(JU'MPX ɾϝΠϯϒϥϯνɿNBTUFSEFWFMPQ ɾαϙʔτϒϥϯνɿGFBUVSFIPUpYSFMFBTF ϒϥϯν໊ ݩͱͳΔϒϥϯν Ϛʔδ͢Δϒϥϯν ༻్ master - -
ϦϦʔεࡁΈͷιʔείʔυΛཧ͢Δ develop master - ։ൃதͷιʔείʔυΛཧ͢Δ feature develop develop ػೳ࣮όάमਖ਼ͳͲͷ։ൃ࡞ۀΛߦ͏ release develop develop,master ϦϦʔε४උ࡞ۀΛߦ͏ hotfix master develop,master ۓٸͷमਖ਼࡞ۀΛߦ͏
NBTUFSϒϥϯν͔ΒEFWFMPQϒϥϯνΛ࡞ 5JNF NBTUFS EFWFMPQ GFBUVSF SFMFBTF IPUpY NBTUFSϒϥϯνɺEFWFMPQϒϥϯν͕ ϝΠϯϒϥϯνͱͳΓ·͢
EFWFMPQϒϥϯν͔Β։ൃ༻ͷGFBUVSFϒϥϯνΛ࡞ 5JNF NBTUFS EFWFMPQ GFBUVSF SFMFBTF IPUpY
GFBUVSFϒϥϯνͰ։ൃΛਐΊΔ 5JNF NBTUFS EFWFMPQ GFBUVSF SFMFBTF IPUpY
։ൃ͕ऴΘͬͨΒGFBUVSFϒϥϯνΛEFWFMPQʹϚʔδ 5JNF NBTUFS EFWFMPQ GFBUVSF SFMFBTF IPUpY ˞ϚʔδޙGFBUVSFϒϥϯνআ͢Δ ˞EFWFMPQϒϥϯνϦϞʔτʹϓογϡ
EFWFMPQϒϥϯν͔ΒSFMFBTFϒϥϯνΛ࡞ 5JNF NBTUFS EFWFMPQ GFBUVSF SFMFBTF IPUpY όʔδϣϯ൪߸ͷߋ৽υΩϡϝϯτͷߋ৽Λߦ͏
SFMFBTFϒϥϯνΛEFWFMPQ NBTUFSʹϚʔδ 5JNF NBTUFS EFWFMPQ GFBUVSF SFMFBTF IPUpY ˞ϚʔδޙSFMFBTFϒϥϯνআ͢Δ
NBTUFSϒϥϯν͔ΒϦϦʔεΛߦ͏ 5JNF NBTUFS EFWFMPQ GFBUVSF SFMFBTF IPUpY
ۓٸରԠɿNBTUFSϒϥϯν͔ΒIPUpYϒϥϯνΛ࡞ 5JNF NBTUFS EFWFMPQ GFBUVSF SFMFBTF IPUpY IPUpYϒϥϯνͰόάमਖ਼ͳͲΛߦ͏
ۓٸରԠɿIPUpYϒϥϯνΛEFWFMPQ NBTUFSʹϚʔδ 5JNF NBTUFS EFWFMPQ GFBUVSF SFMFBTF IPUpY ˞ϚʔδޙIPUpYϒϥϯνআ͢Δ
ۓٸରԠɿNBTUFSϒϥϯν͔ΒϦϦʔεΛߦ͏ 5JNF NBTUFS EFWFMPQ GFBUVSF SFMFBTF IPUpY
(JU'MPXͷಛ ɾ։ൃɺӡ༻ͷϑϩʔ͕໌֬ʹܾ·͍ͬͯΔͨΊϧʔϧ ʹԊͬͯਐΊΔ͜ͱͰશମΛѲ͍͢͠ ɾಉ࣌ʹෳҊ͕݅Δ߹ʹௐ͍͢͠ϑϩʔ େ ن։ൃ͚ ϝ Ϧ ο τ
σ ϝ Ϧ ο τ ɾϧʔϧ͕ෳࡶͳͨΊ͍͜ͳ͢ͷ͕͍͠ ɾϧʔϧͷֶशίετ͕͔͔Δ ɾϦϦʔεճ͕ଟ͍߹ʹ͔ͳ͍ εϐʔυײ͕ ͘ͳͬͯ͠·͏
(JU)VC'MPX ɾ(JU'MPXΛΑΓγϯϓϧʹͨ͠Γํ ɾQVMMSFRVFTUػೳΛͬͨӡ༻ํ๏ ࢀߟɿ(JU)VC'MPX +BQBOFTFUSBOTMBUJPO IUUQTHJTUHJUIVCDPN(BCLN
(JU)VC'MPXͷͭͷϧʔϧ NBTUFSϒϥϯνৗʹϦϦʔεՄೳͰ͋Δ ࡞ۀ༻ϒϥϯνඞͣNBTUFS͔Β࡞͢Δ ࡞ۀ༻ϒϥϯνΛఆظతʹϓογϡ͢Δ ϓϧϦΫΤετΛ׆༻͢Δ ϓϧϦΫΤετ͕ঝೝ͞ΕͨΒNBTUFSϚʔδ͢Δ NBTUFSͷϚʔδ͕ྃͨ͠ΒͪʹϦϦʔεΛߦ͏
NBTUFSϒϥϯν͔Β࡞ۀ༻ϒϥϯνΛ࡞ 5JNF NBTUFS ϒϥϯν໊ͷ࡞ϧʔϧͳ͠ Կͷ࡞ۀΛ͍ͯ͠Δͷ͔͔Γ໊͢લʹ͢Δ
࡞ۀ༻ϒϥϯνͰ։ൃΛਐΊΔ 5JNF NBTUFS
։ൃ͕ऴΘͬͨΒQVMMSFRVFTUΛ࡞͢Δ 5JNF NBTUFS มߋ͕͋Εमਖ਼͢Δ
NBTUFSϒϥϯνʹϚʔδ 5JNF NBTUFS
NBTUFSϒϥϯν͔ΒϦϦʔεΛߦ͏ 5JNF NBTUFS
ɾ(JU'MPXΛγϯϓϧʹͨ͠ͷͳͷͰӡ༻͍͢͠ ɾमਖ਼ͷαΠΫϧΛճ͍͢͠ͷͰԿճϦϦʔε͕͠ ͍͢ ɾQVMMSFRVFTUΛͬͨίʔυϨϏϡʔ͕ϑϩʔʹ ೖ͍ͬͯΔͷͰ࣮༻త ϝ Ϧ ο τ σ
ϝ Ϧ ο τ ɾಉ࣌ʹෳͷϦϦʔε͕ॏͳΔ߹ʹ͕ඞཁ ɾ֬ೝ༻ͷڥ͕༻ҙ͠ʹ͍͘ (JU)VC'MPXͷಛ
(JU'MPXͱ(JU)VC'MPXͷൺֱ (JU'MPX (JU)VC'MPX ϝ Ϧ ο τ σ ϝ Ϧ
ο τ ɾϑϩʔ͕໌֬ʹܾ·͍ͬͯΔͷ Ͱ࡞ۀΛѲ͍͢͠ ௐ͍͢͠ ɾେن։ൃ͖ ɾ(JU'MPXΛγϯϓϧʹͨ͠ͷ ͳͷͰӡ༻͍͢͠ ɾमਖ਼ͷαΠΫϧΛճ͍͢͠ͷ ͰԿճϦϦʔε͕͍͢͠ ɾෳࡶͳӡ༻ͷͨΊ͍͜ͳ͢ͷ ͕͍͠ ɾϦϦʔεճ͕ଟ͍߹ʹ͔ ͳ͍ ɾಉ࣌ʹෳͷϦϦʔε͕ॏͳΔ ߹ʹ͕ඞཁ ɾ֬ೝ༻ͷڥ͕༻ҙ͠ʹ͍͘
ΞδΣϯμ ɾࣗݾհ ɾ(JU'MPXͱ(JU)VC'MPX ɾ(JU)VC'MPXΛͬͨ։ൃ ϋϯζΦϯ ɹෳਓͰͷ։ൃํ๏ ɹίϯϑϦΫτͷղফ ɾ(JU)VCΛͬͨ։ൃͷҙ͓͢͢Ί
IUUQTHJUIVCDPNFHHTZTUFN (JU)VC)BOETPO-FWFM (JU)VCϋϯζΦϯࢿྉ தڃ
ᶃ࡞ۀऀ͝ͱʹϒϥϯνΛ࡞ ϩʔΧϧ ϦϞʔτ NBTUFS CSBODI" CSBODI# "͞Μ #͞Μ ˞֤࡞ۀऀNBTUFSϒϥϯνͰ࡞ۀ͠ͳ͍ ˞ඞͣผϒϥϯνΛͬͯ࡞ۀ͢Δ
HJUDIFDLPVUCCSBODI"NBTUFS
ᶄ࡞ۀ༰Λ֤ϒϥϯνʹө ϩʔΧϧ ϦϞʔτ CSBODI# CSBODI" "͞Μ #͞Μ HJUDPNNJUBNlϑΝΠϧͷՃमਖ਼z
ᶄ࡞ۀ༰Λ֤ϒϥϯνʹө ϩʔΧϧ ϦϞʔτ CSBODI# CSBODI# #͞Μ CSBODI" "͞Μ HJUQVTIPSJHJOCSBODI#
ᶄ࡞ۀ༰Λ֤ϒϥϯνʹө ϩʔΧϧ ϦϞʔτ CSBODI# CSBODI# #͞Μ NBTUFS #͞Μͷ࡞ۀ༰͕ ϦϞʔτͷNBTUFS ʹϚʔδ͞ΕΔ
QVMMSFRVFTU CSBODI" "͞Μ
ᶄ࡞ۀ༰Λ֤ϒϥϯνʹө ϩʔΧϧ ϦϞʔτ CSBODI# #͞Μ NBTUFS "͞ΜͷCSBODI"ͱ NBTUFSϒϥϯνͰ ͕ࠩൃੜ CSBODI"
"͞Μ
ᶅϦϞʔτͷ༰ΛϩʔΧϧʹө ϩʔΧϧ ϦϞʔτ NBTUFS CSBODI" "͞Μ NBTUFS #͞Μͷ࡞ۀΛϩʔΧϧʹऔ ΓࠐΉ HJUDIFDLPVUNBTUFS
HJUQVMM
ᶅϦϞʔτͷ༰ΛϩʔΧϧʹө ϩʔΧϧ ϦϞʔτ NBTUFS CSBODI" "͞Μ NBTUFS ˞OP⒎/PGBTUGPSXBSEΦϓγϣϯ ˠϚʔδίϛοτΛൃੜͤ͞ΔΦϓγϣϯ ˞جຊతʹOP⒎ΦϓγϣϯΛ͚ͭͯϚʔδ͢
Δ͜ͱΛ͓͢͢Ί͠·͢ HJUDIFDLPVUCSBODI" HJUNFSHFOP⒎NBTUFS #͞Μͷ࡞ۀ༰ΛCSBODI" ʹऔΓࠐΉ Ϛʔδ͢Δ
ᶆमਖ਼༰ΛϦϞʔτʹϓογϡ ϩʔΧϧ ϦϞʔτ CSBODI" "͞Μ CSBODI# #͞Μ CSBODI" NBTUFS HJUQVTIPSJHJOCSBODI"
ᶇϦϞʔτʹϩʔΧϧͷ༰Λө ϩʔΧϧ ϦϞʔτ CSBODI" "͞Μ CSBODI# #͞Μ CSBODI" NBTUFS "͞Μͷ࡞ۀ༰͕
ϦϞʔτͷNBTUFS ʹϚʔδ͞ΕΔ QVMMSFRVFTU
ΞδΣϯμ ɾࣗݾհ ɾ(JU'MPXͱ(JU)VC'MPX ɾ(JU)VC'MPXΛͬͨ։ൃ ϋϯζΦϯ ɹෳਓͰͷ։ൃํ๏ ɹίϯϑϦΫτͷղফ ɾ(JU)VCΛͬͨ։ൃͷҙ͓͢͢Ί
IUUQTHJUIVCDPNFHHTZTUFN (JU)VC)BOETPO-FWFM (JU)VCϋϯζΦϯࢿྉ தڃ Λࢀߟ
&/%