$30 off During Our Annual Pro Sale. View Details »
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
手動から自動へ、そしてその先へ
moritamasami
0
300
EM歴1年10ヶ月のぼくがぶち当たった苦悩とこれからへ向けて
maaaato
0
280
生成AIでテスト設計はどこまでできる? 「テスト粒度」を操るテーラリング術
shota_kusaba
0
740
[デモです] NotebookLM で作ったスライドの例
kongmingstrap
0
140
モダンデータスタック (MDS) の話とデータ分析が起こすビジネス変革
sutotakeshi
0
480
re:Inventで気になったサービスを10分でいけるところまでお話しします
yama3133
1
120
グレートファイアウォールを自宅に建てよう
ctes091x
0
150
30分であなたをOmniのファンにしてみせます~分析画面のクリック操作をそのままコード化できるAI-ReadyなBIツール~
sagara
0
140
コミューンのデータ分析AIエージェント「Community Sage」の紹介
fufufukakaka
0
490
MLflowダイエット大作戦
lycorptech_jp
PRO
1
110
生成AI時代におけるグローバル戦略思考
taka_aki
0
170
プロンプトやエージェントを自動的に作る方法
shibuiwilliam
4
3k
Featured
See All Featured
We Have a Design System, Now What?
morganepeng
54
7.9k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
The World Runs on Bad Software
bkeepers
PRO
72
12k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
37
2.6k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
51k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.6k
A better future with KSS
kneath
240
18k
How to Ace a Technical Interview
jacobian
280
24k
[RailsConf 2023] Rails as a piece of cake
palkan
58
6.2k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
8.3k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
14k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
10
730
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 ৽͘͠࡞Γ͍ͯ͠ΔΘ͚ͳͷͰɺϦϞʔτͷଞͷ ࡞ۀऀͱಉظ͢Δͱ͖ҙ
͜ΕͰ͏ ͔Γ·ͨ͠ Ͷ