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の本当の基礎 / Let's know Git
Search
Masaya Kazama
March 24, 2017
Technology
1
4.6k
知っておいてほしいGitの本当の基礎 / Let's know Git
コミットの連なりと.gitの中身について @miyaoka
社内勉強会向けに作った資料
Masaya Kazama
March 24, 2017
Tweet
Share
More Decks by Masaya Kazama
See All by Masaya Kazama
左右セパレート型格子配列キーボード ErgoDoxのご紹介 / Introducing Ergodox
miyaoka
0
1.9k
Other Decks in Technology
See All in Technology
Shadow DOM & Security - Exploring the boundary between light and shadow
masatokinugawa
0
590
P2P通信の標準化 WebRTCを知ろう
faithandbrave
6
1.9k
ABEMAの本番環境負荷試験への挑戦
mk2taiga
5
1.6k
DATA+AI SummitとSnowflake Summit: ユーザから見た共通点と相違点 / DATA+AI Summit and Snowflake Summit
nttcom
0
120
AWS Well-Architected から考えるオブザーバビリティの勘所 / Considering the Essentials of Observability from AWS Well-Architected
sms_tech
1
770
【あのMCPって、どんな処理してるの?】 AWS CDKでの開発で便利なAWS MCP Servers特集
yoshimi0227
6
1.1k
An introduction to Claude Code SDK
choplin
3
3k
RapidPen: AIエージェントによる高度なペネトレーションテスト自動化の研究開発
laysakura
1
330
低レイヤソフトウェア技術者が YouTuberとして食っていこうとした話
sat
PRO
7
5.7k
Maintainer Meetupで「生の声」を聞く ~講演だけじゃないKubeCon
logica0419
0
140
AI時代にも変わらぬ価値を発揮したい: インフラ・クラウドを切り口にユーザー価値と非機能要件に向き合ってエンジニアとしての地力を培う
netmarkjp
0
180
TROCCO今昔
gtnao
0
170
Featured
See All Featured
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
5.9k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.8k
The Art of Programming - Codeland 2020
erikaheidi
54
13k
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.9k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.8k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
161
15k
Side Projects
sachag
455
43k
Balancing Empowerment & Direction
lara
1
480
Fireside Chat
paigeccino
37
3.5k
Transcript
͓͍ͬͯͯ΄͍͠ (JUͷຊͷجૅ
ίϛοτͷ࿈ͳΓͱHJUͷத ʹ͍ͭͯ ˏNJZBPLB
தڃऀʙॳ৺ऀ͚
ͱɺࢥ͍͍ͨ
ૢ࡞ͷઆ໌ͱ͔ ͦ͏͍͏͜ͱΑΓ
ࠜຊతʹ(JUͷ࡞ΓΛ Γ·͠ΐ͏
(JUͷίϛοτάϥϑ
FHGBDFCPPLSFBDU
͍͍ͬͨͲ͏ͬͯ ද͍ࣔͯ͠ΔͷͰ͠ΐ͏͔ʁ
ίϛοτͱ JECCG BVUIPSOBNF EBUF "EEJOEFYQBHF JOEFYIUNM JNBHFQOH NBJOKT
ίϛοτͱ JECCG BVUIPSOBNF EBUF "EEJOEFYQBHF JOEFYIUNM JNBHFQOH NBJOKT ͦΕͧΕϢχʔΫͳ*%Λ࣋ͪɺ ࡞ऀใɺ
ίϛοτϝοηʔδΛ࣋ͪɺ ϑΝΠϧ༰Λ࣋ͪ·͢
ίϛοτͱ ͦͯ͠ ͷίϛοτ*%Λ࣋ͪ·͢ JECCG QBSFOUTEFDD BVUIPSOBNF EBUF "EEJOEFYQBHF JOEFYIUNM JNBHFQOH
NBJOKT
༨ஊɿ(JUͰΘΕΔ*% w 4)"ؔʢ੬ऑੑʣʹΑΔϢχʔΫͳ*% w ಉ͡༰ͳΒಉ͡*%ʹͳΔ w ϑϧͰจࣈͷਐʹͳΔ͕ɺઌ಄จࣈ͋ ΕࣝผͰ͖ΔͷͰେจࣈఔʹলུͰ͖Δ
w ίϛοτΛḷ͍ͬͯ͘͜ͱͰπϦʔʹͳΓ·͢ ίϛοτͷ࿈ͳΓ JECCG QBSFOUTEFDD JEEFDD QBSFOUTGCD JEGCD QBSFOUTDFGF JEDFGF
QBSFOUTBCG JEBCG QBSFOUTGEB
ίϛοτͷ࿈ͳΓ ࠷ॳͷίϛοτ
ͰɺͲ͔͜ΒḷΔʁ
ίϛοτͷ࿈ͳΓ ࠷ॳͷίϛοτ w ֤ίϛοτํʹḷ͍ͬͯ͘ͷͰɺ࠷ॳͷίϛο τىʹͳΒͳ͍
πϦʔͷى NBTUFS EFWFMPQ W )&"%
ىͱͳΔͷ )&"% ϒϥϯν λά
)&"%͔ΒḷΔ NBTUFS EFWFMPQ W )&"%
)&"%ͱ w ݱࡏϦϙδτϦͷͲ͜ͷίϛοτΛࢦ͍ͯ͠Δͷ͔ͱ͍ ͏ϙΠϯλ w جຊతʹબதͷϒϥϯνΛࢦ͢ʢϒϥϯνͰͳ͘ ίϛοτ*%Λࢦఆ͢Δ͜ͱͰ͖Δ͕ܯࠂ͕ग़Δʣ w ͜ͷϙΠϯλͷࢦࣔ͢͠ίϛοτͱϫʔΫϑΝΠϧͱͷ ͕ࠩදࣔ͞ΕΔ
ϒϥϯνͷΓସ͑ NBTUFS EFWFMPQ W )&"% HJUDIFDLPVUNBTUFS
)&"%ˠϒϥϯνˠίϛοτ w ʮ)&"%ˠ͍ͣΕ͔ͷϒϥϯνˠίϛοτʯͱࢀর͢Δ ͜ͱͰઌ಄ͷίϛοτ͕ܾ·ΓɺίϛοτπϦʔΛḷΔ ͜ͱ͕Ͱ͖Δ w ϒϥϯνλάίϛοτΛࢦࣔ͢͠ᐼͷΑ͏ͳͷʢϒ ϥϯνҠಈ͢Δ͕λάݻఆʣ w ϒϥϯνΛΓସ͑Δͱ͍͏ͷɺ)&"%͕ࢀর͢Δϒ
ϥϯνΛม͑Δͱ͍͏͜ͱ
Ͳ͔͜Βࢀর͞Εͳ͍ίϛοτ NBTUFS EFWFMPQ W )&"%
Ͳ͔͜Βࢀর͞Εͳ͍ίϛοτ w )&"%ͳͲ͔ΒḷΕͳ͍ίϛοτπϦʔʹද ࣔ͞Εͳ͍ w ͭ·ΓπϦʔʹදࣔ͞Ε͍ͯΔͷ͕શͯͷί ϛοτͰͳ͍ w Ͳ͔͜ΒḷΕͳ͍ίϛοτͦͷ͏ͪࣗಈత ʹফڈ͞ΕΔ
ࢀর͞Εͳ͘ͳΔίϛοτྫ $ # " "EEJOFEYpMF )&"%
ίϛοτϝοηʔδͷUZQP "EEJOFEYpMF ·͕ͪ͑ͨʂ $ # " )&"% ʘ͔͍ͣ͠ʗ
BNFOEͰϝοηʔδमਖ਼ "EEJOEFYpMF $ # " )&"% ʘͳ͓ͬͨʗ HJUDPNNJUBNFOENl"EEJOEFYpMFz
͜ͷͱ͖ɺ࣮ࡍʜ "EEJOEFYpMF $ # " "EEJOFEYpMF $` )&"% w ίϛοτΛॻ͖͑ͨͷͰͳ͘ɺผͷ৽͍͠ί
ϛοτΛ࡞ͬͯͦͪΒʹ)&"%ΛҠ͍ͯ͠Δ w ݩͷίϛοτḷΕͳ͘ͳͬͨͷͰπϦʔද͔ࣔ Βফ͑Δ w ͳͷͰॻ͖ΘͬͨΑ͏ʹΈ͑Δ w දࣔ͞Εͳ͘ͳͬͯ෦తʹΓଓ͚Δ
աڈͷίϛοτΛॻ͖͑Δ $ # " PMENTH )&"% % & ͪΐͬͱ͚ͩ͜͜मਖ਼͍ͨ͠
SFCBTF $ #` " OFXNTH )&"% % & ʘͳ͓ͬͨʔʗ HJUSFCBTFJʢུ
Ͱຊ͜͏ͳͬͯΔ $ # " PMENTH )&"% % & $` #`
%` &` OFXNTH
มΘͬͨͷҰ෦ͳΜ͔ͩΒ ͚ͩ͜͜Ͱ͍͍Μ͡Όʁ $ # " PMENTH )&"% % & #`
OFXNTH
͜͏͍͏ͷͳΜͰ͢ $ # " % & $` #` %` &`
w Ұ࡞ͬͨίϛοτʢجຊతʹʣॻ͖ ΘΒͳ͍ w ৽͍͠ίϛοτ*%͕มΘΔ w *%͕มΘΔͷͰɺͨͱ͑ͦͷଞͷ༰͕ શ͘ಉ͡Ͱ৽͍͠ίϛοτͱͯ͠࡞Γ ͞ΕΔ w ͭ·ΓͲ͔͜࡞Γͨ͠Β͔ͦ͜Βޙͷί ϛοτ࿈తʹશͯ࡞Γ͠ʹͳΔ มߋͨ͠ *%͕มΘͬͨ ͷ͔ͦ͏͔ *%͕มΘͬͨ ͷ͔ͦ͏͔ *%͕มΘͬͨ ͷ͔ͦ͏͔
ϒϥϯνΛ ফͪ͠Όͬͨ
͜Μͳϒϥϯν $ # " GFBU % & EFWFMPQ
ϒϥϯνআ $ # " % & EFWFMPQ HJUCSBODI%GFBU ʘ͋ͬɺͬͺΓඞཁͩͬͨʗ
େৎ ͦΕͰऔΓग़͢ खஈ͋Γ·͢
ϒϥϯνΛ͚͢ $ # " % & EFWFMPQ HJUSFqPH CCB)&"%!\^ʜ FCDDF)&"%!\^ʜ
GCCC)&"%!\^ʜ HJUCSBODIOFXCSBODICCB OFXCSBODI w ίϛοτݟ͑ͳ͘ͳ͚ͬͨͩͰɺ࣮ࡍʹ ফ͍͑ͯͳ͍ w )&"%ͷϩάͳͲ͔Βίϛοτ*%Λݟ͚ͭग़ ͯͦ͜͠ʹ৽ͨʹϒϥϯνͳͲΛ͚ͭΕ· ͨදࣔ͞ΕΔΑ͏ʹͳΔ
͜͜·Ͱͷ ·ͱΊ
w ϦϙδτϦͷத͜Μͳײ͡ ϙΠϯλͱίϛοτ܈ NBTUFS EFWFMPQ W )&"% ೖޱͱͳΔϙΠϯλ ແͷίϛοτ
Πϝʔδతʹ ͍͍ͩͨΘ͔Γ·ͨ͠ Ͷ
͔͜͜Β ࣮ࡍͷதΛ ݟͯཧղ͠·͠ΐ͏
HJU
(JUͷॳظԽ XPSLJOHEJSFDUPSZ HJUJOJU
(JUͷॳظԽ SFGT HJU )&"% PCKFDUT XPSLJOHEJSFDUPSZ MPHT HJUJOJU HJUσΟϨΫτϦ͕࡞͞Εɺ͞ΒʹͦͷதʹۭσΟϨΫτϦ ܈͕࡞͞ΕΔʢ͜͜ͰओཁͳͷͷΈʹهࡌΛলུʣ
ϑΝΠϧΛ࡞ͯ͠Ճ XPSLJOHEJSFDUPSZ pMFUYU FDIPpMFDPOUFOUpMFUYU HJUBEEpMFUYU
ϑΝΠϧΛ࡞ͯ͠Ճ SFGT HJU )&"% JOEFY PCKFDUT E B XPSLJOHEJSFDUPSZ pMFUYU
MPHT FDIPpMFDPOUFOUpMFUYU HJUBEEpMFUYU 4)"ͷ*%͔ΒʮσΟϨΫτ Ϧ໊ ϑΝΠϧ໊ʯͷϑΝΠϧ ʹ༰͕֨ೲ͞ΕΔ ݱࡏεςʔδ͞Ε͍ͯΔϑΝΠ ϧπϦʔใ ͜ͷ༰ͱϫʔΫϑΝΠϧΛ ൺֱ͕ͯࠩ͠දࣔ͞ΕΔ
࠷ॳͷίϛοτ XPSLJOHEJSFDUPSZ pMFUYU HJUDPNNJUNlJOJUJBMDPNNJUz
࠷ॳͷίϛοτ SFGT IFBET NBTUFS HJU )&"% JOEFY PCKFDUT FC DDF
B E XPSLJOHEJSFDUPSZ pMFUYU MPHT )&"% SFGT IFBET NBTUFS HJUDPNNJUNlJOJUJBMDPNNJUz lFCDDFz ϒϥϯν͕ࢦࣔ͠͠ ͍ͯΔઌͷίϛοτ *% lSFGSFGTIFBET NBTUFSz ݱࡏϦϙδτϦͷͲ͜ Λࢀর͍ͯ͠Δͷ͔ͱ ͍͏ϙΠϯλ FCDDFNBTUFS!\^DPNNJU JOJUJBM JOJUJBMDPNNJU FCDDF)&"%!\^DPNNJU JOJUJBM JOJUJBMDPNNJU
w (JUΦϒδΣΫτͷߏΛݟͯΈΑ͏ HJUDBUpMFQFCDDF USFFBFCCDGECBEBDEEB BVUIPS.BTBZB,B[BNB DPNNJUUFS.BTBZB,B[BNB JOJUJBMDPNNJU HJUDBUpMFQB
CMPCEBCDBBBEGFpMFUYU HJUDBUpMFQE pMFDPOUFOU PCKFDUT FC DDF B E ࠷ॳͷίϛοτͷத $PNNJU0CKFDU ίϛοτใ 5SFF0CKFDU ϑΝΠϧϦετใ #MPC0CKFDU ϑΝΠϧͷத NBTUFS
ϒϥϯνͷ࡞ XPSLJOHEJSFDUPSZ pMFUYU HJUCSBODIEFW
ϒϥϯνͷ࡞ SFGT IFBET NBTUFS EFW HJU )&"% JOEFY PCKFDUT FC
DDF B E XPSLJOHEJSFDUPSZ pMFUYU MPHT )&"% SFGT IFBET NBTUFS EFW HJUCSBODIEFW FCDDF ϒϥϯνʹ৽͍͠ϙΠϯλ͕Ճ͞ΕΔɻ ͜ͷ࣌ͰNBTUFSͱಉҰ FCDDFEFW!\^CSBODI$SFBUFEGSPNNBTUFS
ϒϥϯνͷΓସ͑ XPSLJOHEJSFDUPSZ pMFUYU HJUDIFDLPVUEFW
ϒϥϯνͷΓସ͑ SFGT IFBET NBTUFS EFW HJU )&"% JOEFY PCKFDUT FC
DDF B E XPSLJOHEJSFDUPSZ pMFUYU MPHT )&"% SFGT IFBET NBTUFS EFW HJUDIFDLPVUEFW SFGSFGTIFBETEFW )&"%ͷࢀরઌΛมߋ͢Δ ͜ͱͰϒϥϯν͕มΘΔ FCDDF)&"%!\^DIFDLPVUNPWJOHGSPNNBTUFSUPEFW FCDDF)&"%!\^DPNNJU JOJUJBM JOJUJBMDPNNJU
ճͷίϛοτ XPSLJOHEJSFDUPSZ pMFUYU pMFUYU FDIPpMF@UYUpMFUYU HJUBEEpMFUYU HJUDPNNJUNlBEEpMFz
ճͷίϛοτ SFGT IFBET NBTUFS EFW HJU )&"% JOEFY PCKFDUT G
CCC FG BGFF CE FC E XPSLJOHEJSFDUPSZ pMFUYU pMFUYU MPHT )&"% SFGT IFBET NBTUFS EFW FDIPpMF@UYUpMFUYU HJUBEEpMFUYU HJUDPNNJUNlBEEpMFz GCCC)&"%!\^DPNNJUBEEpMF FCDDF)&"%!\^DIFDLPVUNPWJOHGSPNNBTUFSUPEFW FCDDF)&"%!\^DPNNJU JOJUJBM JOJUJBMDPNNJU GCCCEFW!\^DPNNJUBEEpMF FCDDFEFW!\^CSBODI$SFBUFEGSPNNBTUFS GCCC ৽͍͠ίϛοτʹϙΠϯλ ͕ॻ͖ΘΔ
w ॳճͱҧ͏ͱ͜Ζ HJUDBUpMFQGC USFFCEFBBEFCCFCCBC QBSFOUFCDDFDCGFFFGCDF BVUIPS.BTBZB,B[BNB DPNNJUUFS.BTBZB,B[BNB BEEpMF
HJUDBUpMFQCE CMPCEBCDBBBEGFpMFUYU CMPCFGBGFFDFFDGGEEEGCFpMFUYU PCKFDUT G CCC CE E FG BGFF ճͷίϛοτͷத ͷίϛοτ*%͕Ճ͞Εͨ ෳϑΝΠϧʹͳͬͨ
NBTUFSʹϚʔδ XPSLJOHEJSFDUPSZ pMFUYU pMFUYU HJUDIFDLPVUNBTUFS HJUNFSHFEFW
NBTUFSʹϚʔδ SFGT IFBET NBTUFS EFW HJU )&"% JOEFY PCKFDUT
CCB G FG FC E XPSLJOHEJSFDUPSZ pMFUYU pMFUYU MPHT )&"% SFGT IFBET NBTUFS EFW HJUDIFDLPVUNBTUFS HJUNFSHFEFW CCB)&"%!\^NFSHFEFW.FSHFNBEFCZUIF SFDVSTJWFTUSBUFHZ FCDDF)&"%!\^DIFDLPVUNPWJOHGSPNEFWUPNBTUFS GCCC)&"%!\^DPNNJUBEEpMF FCDDF)&"%!\^DIFDLPVUNPWJOHGSPNNBTUFSUPEFW FCDDF)&"%!\^DPNNJU JOJUJBM JOJUJBMDPNNJU CCBNBTUFS!\^NFSHFEFW.FSHFNBEFCZUIF SFDVSTJWFTUSBUFHZ FCDDFNBTUFS!\^DPNNJU JOJUJBM JOJUJBMDPNNJU CCB ৽͍͠ίϛοτΛࢀর SFGSFGTIFBETNBTUFS ݩͷNBTUFSϒϥϯνʹΔ
w ϚʔδίϛοτͷதΛݟͯΈΑ͏ HJUDBUpMFQC USFFCEFBBEFCCFCCBC QBSFOUFCDDFDCGFFFGCDF QBSFOUGCCCCCECBFFGBCEECB BVUIPS.BTBZB,B[BNB DPNNJUUFS.BTBZB,B[BNB
.FSHFCSBODIEFW PCKFDUT CCB CE E FG BGFF ճͷίϛοτ HJUDBUpMFQCE CMPCEBCDBBBEGFpMFUYU CMPCFGBGFFDFFDGGEEEGCFpMFUYU ϑΝΠϧ༰͖ͬ͞ͱಉ͡ ϚʔδίϛοτΛͭ࣋ͭ ࠷ॳͷίϛοτ ճͷίϛοτ
Ϛʔδίϛοτͷͭ " % $ # EFWFMPQ NBTUFS IFBE HJUDBUpMFQC USFFCEFBBEFCCFCCBC
QBSFOUFCDDFDCGFFFGCDF QBSFOUGCCCCCECBFFGBCEECB FCDDF GCCC w ͭͷQBSFOUIFBEଆ w ͭNFSHFࢦఆଆ
·ͱΊ w ࡞ۀதͷϑΝΠϧͱʹ͔͘ίϛοτ͓ͯ͜͠͏ w Ұίϛοτͨ͠༰ɺSFTFUIBSEͨ͠Γϒ ϥϯνফͯ͠ݟ͑ͳ͘ͳࣦͬͯΘΕ͍ͯͳ͍ w ϒϥϯνͨͩͷᐼ w ؾܰʹ࡞ͬͨΓফͨ͠Γ͠Α͏
w ίϛοτʢݪଇʣॻ͖͑ෆՄ w ৽͘͠࡞Γ͍ͯ͠ΔΘ͚ͳͷͰɺϦϞʔτͷଞͷ ࡞ۀऀͱಉظ͢Δͱ͖ҙ
͜ΕͰ͏ ͔Γ·ͨ͠ Ͷ