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
2k
Other Decks in Technology
See All in Technology
ZOZOマッチのアーキテクチャと技術構成
zozotech
PRO
4
1.5k
TS-S205_昨年対比2倍以上の機能追加を実現するデータ基盤プロジェクトでのAI活用について
kaz3284
1
150
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
9
73k
Snowflake Intelligenceにはこうやって立ち向かう!クラシルが考えるAI Readyなデータ基盤と活用のためのDataOps
gappy50
0
230
「どこから読む?」コードとカルチャーに最速で馴染むための実践ガイド
zozotech
PRO
0
420
ハードウェアとソフトウェアをつなぐ全てを内製している企業の E2E テストの作り方 / How to create E2E tests for a company that builds everything connecting hardware and software in-house
bitkey
PRO
1
130
250905 大吉祥寺.pm 2025 前夜祭 「プログラミングに出会って20年、『今』が1番楽しい」
msykd
PRO
1
900
共有と分離 - Compose Multiplatform "本番導入" の設計指針
error96num
2
510
複数サービスを支えるマルチテナント型Batch MLプラットフォーム
lycorptech_jp
PRO
0
370
allow_retry と Arel.sql / allow_retry and Arel.sql
euglena1215
1
170
BPaaSにおける人と協働する前提のAIエージェント-AWS登壇資料
kentarofujii
0
140
AI開発ツールCreateがAnythingになったよ
tendasato
0
130
Featured
See All Featured
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
252
21k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
30
9.7k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Git: the NoSQL Database
bkeepers
PRO
431
66k
Fireside Chat
paigeccino
39
3.6k
GitHub's CSS Performance
jonrohan
1032
460k
How to Ace a Technical Interview
jacobian
279
23k
Rails Girls Zürich Keynote
gr2m
95
14k
Side Projects
sachag
455
43k
Practical Orchestrator
shlominoach
190
11k
It's Worth the Effort
3n
187
28k
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 ৽͘͠࡞Γ͍ͯ͠ΔΘ͚ͳͷͰɺϦϞʔτͷଞͷ ࡞ۀऀͱಉظ͢Δͱ͖ҙ
͜ΕͰ͏ ͔Γ·ͨ͠ Ͷ