Slide 1

Slide 1 text

ࣗ෼͕ؤுΒͳͯ͘΋ Կͱ͔ͳΔΑ͏ʹ͢ΔͨΊͷ Gitӡ༻ͷίπ @nihonbuson NaITE #13 http://nagasaki-it-engineers.connpass.com/event/29925/

Slide 2

Slide 2 text

͸͡Ίʹ… Ξϯέʔτ • GitͷίϚϯυΛ஌Βͳ͍ • GitͱGitHubͷҧ͍͕෼͔Βͳ͍ • GitΛۀ຿Ͱ࢖͏৔߹ɺ15ਓҎ্͕ର৅ऀʹͳΔ • ίϯύΠϧ͕࣌ؒ௕͍ • νέοτ؅ཧγεςϜΛར༻͍ͯ͠Δ

Slide 3

Slide 3 text

͸͡Ίʹ… Ξϯέʔτ • GitͷίϚϯυΛ஌Βͳ͍ • GitͱGitHubͷҧ͍͕෼͔Βͳ͍ • GitΛۀ຿Ͱ࢖͏৔߹ɺ15ਓҎ্͕ର৅ऀʹͳΔ • ίϯύΠϧ͕࣌ؒ௕͍ • νέοτ؅ཧγεςϜΛར༻͍ͯ͠Δ ؤுͬͯʂ ࠓճͷର৅ऀ

Slide 4

Slide 4 text

Gitͷ࢖͍ํ ʢ։ൃऀ໨ઢʣ https://goo.gl/XvWdkm

Slide 5

Slide 5 text

Gitͷ࢖͍ํʢ։ൃऀ໨ઢʣ http://www.slideshare.net/ihcomega/git-57454868/49

Slide 6

Slide 6 text

GitͱGitHubͷҧ͍

Slide 7

Slide 7 text

GitͱGitHubͷҧ͍ • GitHubͱ͸GitΛ࢖ͬͨWebαʔϏεͷҰͭ • ଞʹ͸ҎԼͷΑ͏ͳαʔϏε͕͋Δ • GitLab • Bitbucket

Slide 8

Slide 8 text

GitͷϝϦοτ

Slide 9

Slide 9 text

GitͷϝϦοτ • ϩʔΧϧͰίϛοτ͕ग़དྷΔ • ϒϥϯνΛ؆୯ʹ෼͚ΒΕΔ • ؆୯ʹϚʔδ͕Ͱ͖Δ

Slide 10

Slide 10 text

ϝϦοτᶃ ϩʔΧϧͰίϛοτ͕ग़དྷΔ • ࡞ۀͷ్தͰίϛοτ͕ग़དྷΔ • αʔόʔ͕མͪͯ΋։ൃΛߦ͏͜ͱ͕ग़དྷΔ http://www.slideshare.net/ihcomega/git-57454868/49

Slide 11

Slide 11 text

ϝϦοτᶃ ϩʔΧϧͰίϛοτ͕ग़དྷΔ • ࡞ۀͷ్தͰίϛοτ͕ग़དྷΔ • αʔόʔ͕མͪͯ΋։ൃΛߦ͏͜ͱ͕ग़དྷΔ ։ൃऀݸਓͷ࿩ͳͷͰׂѪ

Slide 12

Slide 12 text

ϝϦοτᶄ ϒϥϯνΛ؆୯ʹ෼͚ΒΕΔ • SVN
 ϦϙδτϦͷෳ੡͕ඞཁ • Git
 ੾Γସ͑Λߦ͏͚ͩ

Slide 13

Slide 13 text

ϝϦοτᶅ ؆୯ʹϚʔδ͕Ͱ͖Δ • Ϛʔδͷ࢓૊Έ͕SVNΑΓ΋༏ल • ϝιουΛ௥ՃˠSVNͩͱίϯϑϦΫτ

Slide 14

Slide 14 text

͜ΕΒʹΑΓಘΒΕΔϝϦοτ • ίʔυϨϏϡʔ͕͠΍͍͢ • ࣗ෼ͷϛε͕ଞਓʹӨڹΛ༩͑ͳ͍ • masterʢຊྲྀʣͷෆ۩߹͕গͳ͍ঢ়ଶʹ • ࣗવʹνέοτۦಈ։ൃ͕Ͱ͖Δ

Slide 15

Slide 15 text

͜ΕΒʹΑΓಘΒΕΔϝϦοτ • ίʔυϨϏϡʔ͕͠΍͍͢ • ࣗ෼ͷϛε͕ଞਓʹӨڹΛ༩͑ͳ͍ • masterʢຊྲྀʣͷෆ۩߹͕গͳ͍ঢ়ଶʹ • ࣗવʹνέοτۦಈ։ൃ͕Ͱ͖Δ ͋ͱͰઆ໌ʂ

Slide 16

Slide 16 text

ϑϩʔͷ঺հ http://nvie.com/posts/a-successful-git-branching-model/

Slide 17

Slide 17 text

SVNʢൺֱͱͯ͠ʣ USVOL

Slide 18

Slide 18 text

SVNʢൺֱͱͯ͠ʣ USVOL

Slide 19

Slide 19 text

SVNʢൺֱͱͯ͠ʣ • ϩʔΧϧͰ։ൃˠίϛοτͯ͠ऴྃ • ୯७ʂ • ͨͩɺෆ۩߹ͷࠞೖΛ๷͙࢓૊Έແ͠

Slide 20

Slide 20 text

GitHubϑϩʔ NBTUFS

Slide 21

Slide 21 text

GitHubϑϩʔ NBTUFS UPQJD

Slide 22

Slide 22 text

GitHubϑϩʔ NBTUFS UPQJD ϒϥϯνΛ ؆୯ʹ෼͚ΒΕΔ

Slide 23

Slide 23 text

GitHubϑϩʔ NBTUFS UPQJD

Slide 24

Slide 24 text

GitHubϑϩʔ NBTUFS UPQJD

Slide 25

Slide 25 text

Gitͷ࢖͍ํʢ։ൃऀ໨ઢʣ http://www.slideshare.net/ihcomega/git-57454868/49

Slide 26

Slide 26 text

GitHubϑϩʔ NBTUFS UPQJD

Slide 27

Slide 27 text

GitHubϑϩʔ NBTUFS UPQJD ؆୯ʹ Ϛʔδ͕Ͱ͖Δ

Slide 28

Slide 28 text

GitHubϑϩʔ NBTUFS UPQJD UPQJD

Slide 29

Slide 29 text

Gitϑϩʔ NBTUFS

Slide 30

Slide 30 text

Gitϑϩʔ NBTUFS EFWMPQ

Slide 31

Slide 31 text

Gitϑϩʔ NBTUFS EFWMPQ UPQJD

Slide 32

Slide 32 text

Gitϑϩʔ NBTUFS EFWMPQ UPQJD

Slide 33

Slide 33 text

Gitϑϩʔ NBTUFS EFWMPQ UPQJD

Slide 34

Slide 34 text

Gitϑϩʔ NBTUFS EFWMPQ UPQJD

Slide 35

Slide 35 text

Gitϑϩʔ NBTUFS EFWMPQ UPQJD SFMFBTF

Slide 36

Slide 36 text

Gitϑϩʔ NBTUFS EFWMPQ UPQJD SFMFBTF

Slide 37

Slide 37 text

Gitϑϩʔ NBTUFS EFWMPQ SFMFBTF IPUpY

Slide 38

Slide 38 text

Gitϑϩʔ NBTUFS EFWMPQ SFMFBTF IPUpY

Slide 39

Slide 39 text

։ൃऀ͕ؾʹ͢Δͷ͸… NBTUFS EFWMPQ UPQJD

Slide 40

Slide 40 text

։ൃऀ͕ؾʹ͢Δͷ͸… NBTUFS EFWMPQ UPQJD SFMFBTF

Slide 41

Slide 41 text

ϑϩʔ͸͋͘·Ͱ΋Ұྫ https://speakerdeck.com/kensuketanaka/ikyu-deploy-flow?slide=35

Slide 42

Slide 42 text

ͪΐͬͱٳܜ

Slide 43

Slide 43 text

ચ͍ਫɾ͗͢͢ਫɾ෇͚ਫ ֆͷ۩ͷචͷચ͍ํ 1. ચ͍ਫͰચ͏ 2. ͗͢͢ਫͰ͙͢͢ 3. ৗʹ៉ྷͳ෇͚ਫͰ
 ਫΛؚ·ͤΔ

Slide 44

Slide 44 text

ಘΒΕΔϝϦοτ

Slide 45

Slide 45 text

ಘΒΕΔϝϦοτʢ࠶ܝʣ • ίʔυϨϏϡʔ͕͠΍͍͢ • ࣗ෼ͷϛε͕ଞਓʹӨڹΛ༩͑ͳ͍ • masterʢຊྲྀʣͷෆ۩߹͕গͳ͍ঢ়ଶʹ • ࣗવʹνέοτۦಈ։ൃ͕Ͱ͖Δ

Slide 46

Slide 46 text

ಘΒΕΔϝϦοτᶃ ίʔυϨϏϡʔ͕͠΍͍͢ NBTUFS EFWMPQ UPQJD ϓϧϦΫΤετ

Slide 47

Slide 47 text

ಘΒΕΔϝϦοτᶄ ࣗ෼ͷϛε͕ଞਓʹӨڹΛ༩͑ͳ͍ NBTUFS EFWMPQ UPQJD ϓϧϦΫΤετ

Slide 48

Slide 48 text

ಘΒΕΔϝϦοτᶅ masterͷෆ۩߹͕গͳ͍ঢ়ଶʹ NBTUFS EFWMPQ UPQJD SFMFBTF

Slide 49

Slide 49 text

ಘΒΕΔϝϦοτᶆ ࣗવʹνέοτۦಈ։ൃ͕Ͱ͖Δ NBTUFS EFWMPQ

Slide 50

Slide 50 text

େن໛ͳಋೖΛ͢Δલʹ ߦ͏͜ͱɾܾΊ͓ͯ͘͜ͱ http://business-peoples.com/material/041.jpg

Slide 51

Slide 51 text

େن໛ಋೖ࣌ʹߦ͏͜ͱᶃ ϑϩʔΛܾΊ͓ͯ͘ • Gitϑϩʔɹɹ →େن໛ͳ৔߹ʹ࠷ద • Githubϑϩʔ →খن໛ɺ୹͍αΠΫϧʹ࠷ద • ͦͷଞͷϑϩʔ →ࣗ෼ͷνʔϜʹ߹͏Α͏ʹ

Slide 52

Slide 52 text

େن໛ಋೖ࣌ʹߦ͏͜ͱᶄ ϨϏϡΞʔΛܾΊ͓ͯ͘ NBTUFS EFWMPQ UPQJD ϓϧϦΫΤετ

Slide 53

Slide 53 text

େن໛ಋೖ࣌ʹߦ͏͜ͱᶄ ϨϏϡΞʔΛܾΊ͓ͯ͘ • ϨϏϡΞʔ͕ϘτϧωοΫʹ • ϨϏϡΞʔͷ਺͕ॏཁ • ͓ޓ͍ʹϨϏϡʔͰ͖Δ૊৫ͳΒ࠷ߴ • ͦ͏Ͱͳ͍৔߹ɺग़དྷͯ1:4͙Β͍ʁ

Slide 54

Slide 54 text

େن໛ಋೖ࣌ʹߦ͏͜ͱᶅ protected branchΛ༻͍Δ • protected branchʹ͢Δ͜ͱͰɺ
 ޡͬͨϚʔδͳͲΛ๷͙ • topic branchҎ֎͸protected branchʹ͢΂͖ NBTUFS EFWMPQ UPQJD SFMFBTF IPUpY

Slide 55

Slide 55 text

େن໛ಋೖ࣌ʹߦ͏͜ͱᶅ protected branchΛ༻͍Δ NBTUFS EFWMPQ UPQJD ࣗಈڋ൱

Slide 56

Slide 56 text

େن໛ಋೖ࣌ʹߦ͏͜ͱᶅ protected branchΛ༻͍Δ • protected branchΛ࢖Θͳ͔ͬͨྫ "Luca, ϑΥʔε(force)Λ࢖͑” - Jenkins։ൃऀ͕̍ϲ݄෼ͷGitHubίϛοτΛফࣦ http://www.infoq.com/jp/news/2013/11/use-the-force

Slide 57

Slide 57 text

େن໛ಋೖ࣌ʹߦ͏͜ͱᶆ ίϯύΠϧɺ੩తղੳͷಋೖ EFWMPQ UPQJD ϓϧϦΫΤετ $*αʔόʔ

Slide 58

Slide 58 text

େن໛ಋೖ࣌ʹߦ͏͜ͱᶆ ίϯύΠϧɺ੩తղੳͷಋೖ EFWMPQ UPQJD ϓϧϦΫΤετ $*αʔόʔ ίϯύΠϧ࣮ߦ IPPL

Slide 59

Slide 59 text

େن໛ಋೖ࣌ʹߦ͏͜ͱᶆ ίϯύΠϧɺ੩తղੳͷಋೖ EFWMPQ UPQJD ϓϧϦΫΤετ $*αʔόʔ ίϯύΠϧ࣮ߦ IPPL ݁Ռ௨஌

Slide 60

Slide 60 text

େن໛ಋೖ࣌ʹߦ͏͜ͱᶆ ίϯύΠϧɺ੩తղੳͷಋೖ EFWMPQ UPQJD ϓϧϦΫΤετ $*αʔόʔ ίϯύΠϧ࣮ߦ IPPL ݁Ռ௨஌ ࣗಈڋ൱

Slide 61

Slide 61 text

େن໛ಋೖ࣌ʹߦ͏͜ͱᶇ νέοτۦಈ։ൃͷڧ੍Խ ࣗ෼ͷ໊લΛtopic branch໊ʹ
 (Git͋Δ͋Δ) NBTUFS EFWMPQ CSPDDPMJ

Slide 62

Slide 62 text

େن໛ಋೖ࣌ʹߦ͏͜ͱᶇ νέοτۦಈ։ൃͷڧ੍Խ EFWMPQ CSPDDPMJ ϓϧϦΫΤετ ࣗಈڋ൱ ϓϧϦΫΤετ

Slide 63

Slide 63 text

࠷ޙʹ

Slide 64

Slide 64 text

࠷ޙʹ • ϑϩʔͳͲӡ༻ΛܾΊΔ͜ͱ͕େࣄʂ • γεςϜԽͰ͖Δॴ͸ͲΜͲΜγεςϜԽ • ʮࣗ෼͕ؤுΒͳͯ͘΋Կͱ͔ͳΔʯ
 Λ࣮ݱ͠Α͏ʂ

Slide 65

Slide 65 text

ࢀߟจݙ • Git-scm
 https://git-scm.com/ • A successful Git branching model
 http://nvie.com/posts/a-successful-git-branching-model/ • GitHub Flow ਤղ
 http://qiita.com/tbpgr/items/4ff76ef35c4ff0ec8314 • git-flow cheatsheet
 http://danielkummer.github.io/git-flow-cheatsheet/index.ja_JP.html • Git͸͡ΊͷҰา
 http://www.slideshare.net/ihcomega/git-57454868 • Ұٳ.comʹ͓͚ΔσϓϩΠϑϩʔͱࣗಈԽ
 https://speakerdeck.com/kensuketanaka/ikyu-deploy-flow • ֆͷ۩ͷචͷચ͍ํ
 https://educe-web.craypas.co.jp/index.php/m/contents_detail • "Luca, ϑΥʔε(force)Λ࢖͑”- Jenkins։ൃऀ͕̍ϲ݄෼ͷGitHubίϛοτΛফࣦ
 http://www.infoq.com/jp/news/2013/11/use-the-force