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の流れ...総復習してみた
Search
F-Yuki
March 25, 2021
Programming
0
160
Gitの流れ...総復習してみた
2021年3月24日Fukuoka.rb 200回 LT大会の発表資料です。
F-Yuki
March 25, 2021
Tweet
Share
More Decks by F-Yuki
See All by F-Yuki
コミュニティって...いい...
7603
0
25
UNIX/Linuxのキモである標準入出力・リダイレクション・パイプ を説明してみよう!
7603
0
870
Other Decks in Programming
See All in Programming
オニオンアーキテクチャを使って、 Unityと.NETでコードを共有する
soi013
0
340
ISUCON14感想戦で85万点まで頑張ってみた
ponyo877
0
130
20241217 競争力強化とビジネス価値創出への挑戦:モノタロウのシステムモダナイズ、開発組織の進化と今後の展望
monotaro
PRO
0
200
CloudflareStack でRAGに入門
asahiiwm
0
140
Spatial Rendering for Apple Vision Pro
warrenm
0
340
ゆるやかにgolangci-lintのルールを強くする / Kyoto.go #56
utgwkk
2
720
Monixと常駐プログラムの勘どころ / Scalaわいわい勉強会 #4
stoneream
0
320
20年もののレガシープロダクトに 0からPHPStanを入れるまで / phpcon2024
hirobe1999
0
960
Stackless и stackful? Корутины и асинхронность в Go
lamodatech
0
1.2k
menu基盤チームによるGoogle Cloudの活用事例~Application Integration, Cloud Tasks編~
yoshifumi_ishikura
0
130
fs2-io を試してたらバグを見つけて直した話
chencmd
0
280
責務を分離するための例外設計 - PHPカンファレンス 2024
kajitack
9
2.3k
Featured
See All Featured
Music & Morning Musume
bryan
46
6.3k
Java REST API Framework Comparison - PWX 2021
mraible
28
8.3k
Code Review Best Practice
trishagee
65
17k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
232
17k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
GitHub's CSS Performance
jonrohan
1030
460k
Side Projects
sachag
452
42k
Designing on Purpose - Digital PM Summit 2013
jponch
116
7k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.4k
[RailsConf 2023] Rails as a piece of cake
palkan
53
5.1k
The Pragmatic Product Professional
lauravandoore
32
6.3k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
3
220
Transcript
ʮ(JUͷྲྀΕ૯෮शͯ͠Έͨʙʯ ਫ ɹ'VLVPLBSCճ-5େձ ɹɹɹɹɹɹɹɹɹɹɹɹɹɹ!ϑογʔ
ॕ🎊։࠵ɺ͓ΊͰͱ͏͍͟͝·͢🎉
ʙຊͷΞδΣϯμ ɾ(JUͷجຊతͳྲྀΕ ϩʔΧϧϦϙ࡞͔Βίϛοτ ϦϞʔτϦϙQVTI ɾڞಉ։ൃฤ ΫϩʔϯɺϒϥϯνɺϓϧϦΫɺϚʔδ
ʙຊͷΞδΣϯμʙ ɾ(JUͷجຊతͳྲྀΕ ϩʔΧϧϦϙ࡞͔Βίϛοτ ϦϞʔτϦϙQVTI ɾڞಉ։ൃฤ ΫϩʔϯɺϒϥϯνɺϓϧϦΫɺϚʔδ
ʲ(JUʹ͍ͭͯʳ ɾϑΝΠϧͷόʔδϣϯཧΛߦ͏πʔϧͷ̍ͭ ϓϩάϥϜίʔυͷόʔδϣϯΛཧɺมߋཤྺΛهɾ͢Δ͜ͱͰɺ ୭͕͍ͭɺԿΛมߋͨ͠ͷ͔͕ɺΘ͔ΔΑ͏ʹͳ͍ͬͯΔɻ ͜ͷ(JUΛ༻͢Δ͜ͱʹΑͬͯɺมߋཤྺΛ͔͞ͷ΅ͬͯίʔυΛݩͷঢ়ଶʹ͢ࣄ Ͱ͖ɺෳਓͰͷڞಉ։ൃ͕Մೳ ɹ (JUͰཧ͢Δ͜ͱͰɺࣗಈͰʮฤूऀʯʮฤू࣌ʯ͕อଘ͞ΕΔҝɺ ϑΝΠϧ͕ʮ͍ͭʯʮ୭ʹΑͬͯʯʮͲ͜ʹमਖ਼͕͋ͬͨͷ͔ʯ͕ ͙͢ʹѲͰ͖Δࣄ͕ग़དྷΔ
ᶃରϑΝΠϧͷϩʔΧϧϦϙδτϦΛ࡞ʢHJUJOJU ɹɹɹɹɹɹɹɹɹɹˣ ᶄϑΝΠϧΛίϛοτ͢ΔҝʹΠϯσοΫεҠಈʢHJUBEEʣϫʔΫπϦʔˠΠϯσοΫε ɹ˞HJUTUBUVTˠϫʔΫπϦʔͱΠϯσοΫεʹ͋ΔϑΝΠϧͷঢ়ଶΛ֬ೝ͢ΔίϚϯυ ɹ˞HJUSFTFUˠΠϯσοΫε͔ΒπϦʔϫʔΫ͢ ɹɹɹɹɹɹɹɹɹɹˣ ᶅมߋ༰Λอଘɻίϛοτϝοηʔδهड़ɻʢHJUDPNNJUNzίϝϯτzʣ ɹ˞ίϛοτͷ֬ೝ HJUMPH
ᶃHJUJOJU ᶅHJUDPNNJUNzίϝϯτz ᶄHJUBEE ΠϯσοΫε ϩʔΧϧϦϙδτϦ ϫʔΫπϦʔ 📁 ʲgit add .ʳˠϑΝΠϧશͯ ʲgit add ϑΝΠϧ໊ʳˠࢦఆϑΝΠϧͷΈ ࡞ۀ͍ͯ͠Δ ϑΝΠϧ͕͋Δॴ 📁 (JUͰͷόʔδϣϯཧΛ։࢝͢Δ 📁 ฤूͨ͠ϑΝΠϧΛίϛοτ͢Δલͷ Ծ֬ఆͯ͠ஔ͍͓ͯ͘ॴ ࣗͷPCʹ͋ΔϦϙδτϦ ʲ(JUͷجຊతͳྲྀΕʙϩʔΧϧϦϙ࡞͔Βίϛοτ·Ͱʙʳ
ᶃϦϞʔτϦϙδτϦ (JUIVCͳͲ ͰϦϙδτϦΛ࡞ ᶄίϛοτࡁΈͷσΟϨΫτϦͷ͋ΔϩʔΧϧϦϙδτϦͱ࡞ͨ͠ϦϞʔτϦϙδτϦͷඥ͚Λ ߦ͏ HJUSFNPUFBEEPSJHJO63- ˞63-(JUIVCʹͯϦϞʔτϦϙδτϦΛ࡞࣌ʹͰ͖ͨ63- ˞<PSJHJO>ͱઃఆͨ͠ϦϞʔτϦϙδτϦ໊ͷ̍ͭ ˞ϦϙδτϦͷ໊લࣗ༝
ᶅඥ͚͕ྃͨ͠ΒɺϩʔΧϧϦϙδτϦͷฤूࡁΈϑΝΠϧΛϦϞʔτϦϙδτϦQVTI͢Δ HJUQVTIϦϞʔτ໊ϒϥϯν໊HJUQVTIPSJHJONBTUFS ᶃϦϙδτϦͷ࡞ ϦϞʔτϦϙδτϦ 📁 (JU)VCͳͲ ϦϞʔτͷαʔόʔ͋Δ ϦϙδτϦ ᶄHJUSFNPUFBEEPSJHJO˒63- ϩʔΧϧϦϙδτϦ 📁 ࣗͷPCʹ͋ΔϦϙδτϦ ࡞͢ΔͱϩʔΧϧϦϙδτϦͱ ඥ͚ͷҝͷ˒63-͕࡞͞ΕΔ ϩʔΧϧϦϙδτϦͱϦϞʔτϦϙδτϦͷඥ͚ ᶅHJUQVTIϦϞʔτ໊ϒϥϯν໊ HJUQVTIPSJHJONBTUFS ฤूࡁΈϒϥϯν ϩʔΧϧϦϙδτϦ Λ ϦϞʔτϦϙδτϦQVTI ʲ(JUͷجຊతͳྲྀΕʙίϛοτ͔ΒϦϞʔτϦϙQVTI·Ͱʳ
ʙຊͷΞδΣϯμʙ ɾڞಉ։ൃฤ ΫϩʔϯɺϒϥϯνɺϓϧϦΫɺϚʔδ
ڞಉ։ൃʹɺϦϞʔτϦϙδτϦʲ(JU)VCͳͲʳ͔ΒϩʔΧϧϦϙδτϦʲࣗͷ1$ʳίϐʔΛ͔ͯ͠ Β֤͕ࣗ࡞ۀΛߦ͏ɻͦͷࡍʹඞཁʹͳΔͷ͕ɺΫϩʔϯ HJUDMPOF ίϚϯυɻ ʔΫϩʔϯʔ ᶃϦϞʔτϦϙδτϦΛΫϩʔϯ͢Δ HJUDMPOF63- ˠϦϞʔτϦϙδτϦͷίϐʔͱͳΔσΟϨΫτϦ͕࡞͞ΕΔ ɹ˞63-ڞಉ։ൃ͢ΔϦϞʔτϦϙδτϦͷ63-
ɹ ᶄDEίϚϯυʹͯΫϩʔϯͯ͠࡞͞ΕͯσΟϨΫτϦҠಈ͢Δ DEରσΟϨΫτϦ ɹ˞MTίϚϯυͰ࡞͞ΕͨσΟϨΫτϦͷϑΝΠϧΛ֬ೝ ͪΌΜͱΫϩʔϯͰ͖͍ͯΔ͔֬ೝ ϦϞʔτϦϙδτϦ 📁 (JU)VCͳͲ ϦϞʔτͷαʔόʔ͋Δ ϦϙδτϦ ᶃHJUDMPOF63- ϩʔΧϧϦϙδτϦ 📁 ࣗͷPCʹ͋ΔϦϙδτϦ ᶄcd <ରσΟϨΫτϦ> ϦϞʔτϦϙδτϦΛΫϩʔϯ͢Δ Ϋϩʔϯͯ͠࡞͞Εͯ σΟϨΫτϦҠಈ͢Δ ʲ(JUͷجຊతͳྲྀΕʙڞಉ։ൃฤ ΫϩʔϯɺϒϥϯνɺϓϧϦΫɺϚʔδ ʳ
ᶃϑΝΠϧΛฤू͢Δҝɺίϐʔͨ͠ϑΝΠϧ NBTUFSϒϥϯν ͔Βฤू༻ϒϥϯνΛ࡞͢Δ ɹ HJUDIFDLPVUCOFX@CSBODI໊ ɾ࡞ͨ͠ฤू༻ϒϥϯν OFX@CSBODI໊ Λฤू͍ͯ͘͠ɻ ᶄฤू͕ऴྃͨ͠ΒɺϑΝΠϧΛίϛοτ͢ΔҝʹΠϯσοΫεҠಈʢHJUBEE
ɹɹɹɹɹɹɹɹɹɹ ᶅมߋ༰Λอଘɻίϛοτϝοηʔδهड़ɻʢHJUDPNNJUNzίϝϯτzʣ ᶆίϛοτࡁΈϑΝΠϧ ϒϥϯν ΛϦϞʔτϦϙδτϦ (JUIVC PSJHJO ϦϙδτϦ QVTI͢Δ ɹ HJUQVTIPSJHJOฤूࡁΈϒϥϯν໊ ɹ˞ϦϞʔτϦϙδτϦΛ֬ೝ͢ΔʹHJUSFNPUFͰ֬ೝ͢Δ ᶇQVTI͢ΔͱϦϞʔτϦϙδτϦ HJUIVC ʹίϛοτࡁΈϑΝΠϧ ϒϥϯν ͕ө͑͞Δ NBTUFS ϒϥϯν OFX@CSBODI ᶃHJUDIFDLPVUCOFX@CSBODI໊ ฤू༻ϒϥϯν࡞ (JUIVCΑΓ ίϐʔͨ͠ϑΝΠϧ ϩʔΧϧϦϙδτϦ࡞ۀ ฤू༻ϒϥϯνΛฤू͢Δ ᶄHJUBEEฤूϒϥϯν ᶅgit commit -mzίϝϯτz ϦϞʔτϦϙδτϦ QVTI͢Δҝͷ४උ ϦϞʔτϦϙδτϦ 📁 (JU)VCͳͲ PSJHJO ᶆgit push origin <ฤूࡁΈϒϥϯν໊> ᶇฤूࡁΈϒϥϯνϑΝΠϧ ʔϒϥϯν࡞ʙฤूɾQVTIʔ
ɾϓϧϦΫͱϩʔΧϧϦϙδτϦͰมߋͨ͠༰Λ(JUIVC্Ͱଞͷ։ൃऀʹ௨͠ɺίʔυϨ ϏϡʔͳͲΛߦͳͬͯΒ͏͜ͱ ᶃ(JUIVC্ͷʮίϛοτࡁΈϑΝΠϧ ϒϥϯν ʯͷ$PNQBSFQVMMSFRVFTUΛΫϦοΫͯ͠ɺ ϨϏϡʔͷ͓ئ͍Λ௨͢Δ ˞Ͳͷϒϥϯνʹରͯ͠QVMMSFRVFTUΛ͢Δͷ͔Λ֬ೝ͢Δ͜ͱ ᶄίϝϯτهࡌޙɺ$SFBUFQVMMSFRVFTUΛΫϦοΫ 📁
PSJHJO ίϛοτࡁΈϒϥϯνϑΝΠϧ ϦϞʔτϦϙδτϦ࡞ۀ ᶃCompare & pull requestΛ ΫϦοΫ ฤू༰ͷίʔυϨϏϡʔͷ͓ئ͍Λ௨ ᶄCreate pull requestΛΫϦοΫ ฤू༰ͷίʔυϨϏϡʔͷ͓ئ͍Λ௨ ʔϓϧϦΫʔ
ɾϚʔδͱมߋ༰ΛNBTUFSϒϥϯν౷߹͢Δɻมߋ༰ΛҰͭͷϒϥϯνʹ·ͱΊΔ ᶃίʔυϨϏϡʔ͕ऴΘͬͨΒɺϦϞʔτͷNBTUFSϒϥϯνʹରͯ͠ϚʔδΛߦ͏ ɹ.FSHFQVMMSFRVFTUˠ$POpSNNFSHFͷॱͰΫϦοΫ ᶄϚʔδ͕ऴΘͬͨΒɺίϛοτࡁΈϑΝΠϧ ϒϥϯν ඞཁͳ͍ͷͰআ͢Δ %FMFUFCSBODIΛΫϦοΫͰআ 📁
(JU)VCͳͲ PSJHJO ίϛοτࡁΈϒϥϯνϑΝΠϧ ϦϞʔτϦϙδτϦ࡞ۀ ᶃ.FSHFQVMMSFRVFTU ˣ ɹ$POpSNNFSHF ᶄDelete branch ϓϧϦΫࡁΈ ʔϚʔδʔ
ϓϧͱɺϦϞʔτϦϙδτϦ͔Βมߋ༰ ཤྺ ΛࣗͷϩʔΧϧϦϙδτϦʹө ͤ͞Δ͜ͱ ᶃϩʔΧϧϦϙδτϦͷϒϥϯνΛNBTUFSϒϥϯνΓସ͑ HJUDIFDLPVUNBTUFS ᶄϦϞʔτϦϙδτϦͷNBTUFSΛϩʔΧϧϦϙδτϦͷNBTUFSQVMM ө ͤ͞Δ
ɹ HJUQVMMPSJHJONBTUFS NBTUFS ϒϥϯν ᶃHJUDIFDLPVUNBTUFS (JUIVCΑΓ ίϐʔͨ͠ϑΝΠϧ ϩʔΧϧϦϙδτϦ࡞ۀ ᶄgit pull origin master 📁 ϦϞʔτϦϙδτϦ NBTUFSϒϥϯν PSJHJO ʔϓϧʔ
ϦϞʔτϦϙδτϦ 📁 (JU)VCͳͲ ϦϞʔτͷαʔόʔ͋Δ ϦϙδτϦ ϩʔΧϧϦϙδτϦ 📁 ࣗͷPCʹ͋ΔϦϙδτϦ ڞಉ։ൃฤ ΫϩʔϯɺϒϥϯνɺϓϧϦΫɺϚʔδͷ·ͱΊʣ
ᶃHJUDMPOF63- ɹᶄHJUDIFDLPVU ɹɹɹCOFX@CSBODI໊ ᶅHJUBEEฤूϒϥϯν ᶆgit commit -mzίϝϯτz ᶇgit push origin <ฤूࡁΈϒϥϯν໊> ᶈCompare & pull request ᶉCreate pull request ᶊ.FSHFQVMMSFRVFTU ɹɹɹɹɹɹ ɹɹ$POpSNNFSHF ᶋDelete branch ᶌgit pull origin master ਤղ
օ༷ɽɽɽ͍͔͕ͩͬͨͰ͠ΐ͏͔🙇 ͜ͷઆ໌ͰΘΓ·ͨ͠Ͱ͠ΐ͏͔ʁ (PPE👍ɹPSɹ#BE👎 ੋඇɺίϝϯτΞυόΠεΛ͚·͢ͱ͍Ͱ͢🙇 ͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠🙇
ʲ(JUͷجຊతͳ༻ޠʳ ɾϦϙδτϦ ɹˠ(JUͰཧ͢ΔରʹͳΔσΟϨΫτϦϑΝΠϧͷࣄΛ͢͞ ɾϩʔΧϧϦϙδτϦ ɹˠࣗͷ1$ʹ͋ΔϦϙδτϦ ɾϦϞʔτϦϙδτϦ ɹˠϦϞʔτͷαʔόʔʹͯɺཧڞ༗͢ΔҝͷϦϙδτϦ (JU)VCͳͲ ɾϫʔΫπϦʔ
ɹˠϦϙδτϦԼͷϑΝΠϧΛฤूͯࣗ͠ಈతʹอଘ͞ΕΔॴʢίϛοτରͰͳ͍ɺͰ͖ͳ͍ʣ ɾΠϯσοΫε ɹˠฤूͨ͠ϑΝΠϧΛίϛοτ͢ΔલͷԾ֬ఆͯ͠ஔ͍͓ͯ͘ॴʢίϛοτରʣ ɾίϛοτ ɹˠϦϙδτϦʹฤू༰Λه͢Δࣄ ɾΫϩʔϯ ɹˠϦϞʔτϦϙδτϦΛෳ͢Δ͜ͱ ɾϒϥϯν ɹˠཤྺͷྲྀΕΛذͯ͠ه͍ͯ͘͠ͷɻذͨ͠ϒϥϯνଞͷϒϥϯνͷӨڹΛड͚ͳ͍ͷͰෳมߋΛಉ࣌ʹਐΊ͍ͯ͘ࣄ͕Մೳɻ ɾνΣοΫΞτ ɹˠଞͷϒϥϯνΓସ͑ Ҡಈ
ʲ(JUίϚϯυʳ ɾHJUJOJU ˠϩʔΧϧϦϙδτϦΛ࡞͢ΔίϚϯυ ɹ (JUͰͷόʔδϣϯཧΛ։࢝͢Δ ɾHJUBEE ˠϫʔΫπϦʔʹ͋ΔϑΝΠϧΛΠϯσοΫεʹҠಈͤ͞ΔίϚϯ υ ʢHJUBEEϑΝΠϧશͯ
HJUBEEϑΝΠϧ໊ࢦఆϑΝΠϧͷΈʣ εςʔδͱݺͿ ɾHJUSFTFU ΞϯεςʔδͱݺͿ ˠΠϯσοΫεʹՃͨ͠ϑΝΠϧΛϫʔΫπϦʔʹ͢ίϚϯυ ɾHJUDPNNJUʢHJUDPNNJUNzϝοηʔδzʣ ˠϩʔΧϧϦϙδτϦͷมߋ༰ΛอଘɻίϛοτϝοηʔδΛೖ ྗ ɾHJUMPH ˠίϛοτϩάΛ֬ೝ͢ΔίϚϯυ ɾHJUTUBUVT ˠϫʔΫπϦʔͱΠϯσοΫεʹ͋ΔϑΝΠϧͷঢ়ଶΛ֬ೝ͢Δί Ϛϯυ ɾHJUDMPOF63- ˠϦϞʔτϦϙδτϦΛϩʔΧϧϦϙδτϦʹΫϩʔϯ͢Δ ɾHJUCSBODI ϩʔΧϧϦϙδτϦʹ͋ΔϒϥϯνͷҰཡͱݱࡏબத ͷϒϥϯνΛ֬ೝ ˠϒϥϯνͷϦετදࣔ HJUCSBODI ˠϒϥϯνͷ৽ن࡞ HJUCSBODIϒϥϯν໊ ˠϒϥϯνͷআ HJUCSBODIEϒϥϯν໊ ϒϥϯνίϛοτ͢Δͱࣗಈతʹ࡞͞ΕΔϒϥϯν NBTUFS ɾHJUDIFDLPVUϒϥϯν໊ ˠϒϥϯνͷΓସ͑ίϚϯυ ˠϫʔΫπϦʔͷϑΝΠϧͷঢ়ଶΛݩʹ͢ "EEঢ়ଶʢίϛοτঢ়ଶʣͰͤͳ͍ ɾHJUDIFDLPVUCϒϥϯν໊ ˠϒϥϯνͷ࡞ͱνΣοΫΞτΛಉ࣌ʹߦ͏ίϚϯυ