Woman Tech Terrace 2019

324c6da8910918b79f58b4323fc564e6?s=47 pnsk
June 15, 2019

Woman Tech Terrace 2019

324c6da8910918b79f58b4323fc564e6?s=128

pnsk

June 15, 2019
Tweet

Transcript

  1. How people build software ! " ޮՌతͳGitϦϙδτϦར༻ͷखҾ͖ @pnsk

  2. How people build software ! Introduction 2 ! Junko Suzuki

    Enterprise Support Engineer @ pnsk
  3. How people build software ! GitHub 3 !

  4. How people build software ! 4

  5. How people build software ! 5 ίϛϡχέʔγϣϯ͸ΦϯϥΠϯ͕جຊ νϟοτ ϏσΦνϟοτ GitHub

  6. How people build software ! 6 ఆظతʹΦϑϥΠϯͰू·Δػձ΋͋Δ

  7. How people build software ! 7 https://github.com

  8. How people build software ! 8

  9. How people build software ! Enterprise Support Engineer 9 !

  10. How people build software ! 10 Enterpriseϓϥϯ

  11. How people build software ! 11 GitHub Enterprise Serverɹ: ΦϯϓϨϛε൛

    GitHub Enterprise Cloudɹ : SaaS൛ GitHub Enterprise ΤϯυϢʔβ͔Β͸GitHub.comͱಉ͡ ؅ཧ໘͸Businessར༻ʹয఺
  12. How people build software ! 12 GitHub EnterpriseͷςΫχΧϧαϙʔτΛ ͍ͯ͠Δͷ͕Enterprise Support

    Engineer
  13. How people build software ! 13 • ΞδΞ • Ϥʔϩού

    • ΞϝϦΧ λΠϜκʔϯʹ෼͔ΕͯνʔϜ͕ߏ੒͞Ε͍ͯΔ
  14. How people build software ! ޮ཰తͳGitϦϙδτϦར༻ ͷखҾ͖ 14 !

  15. How people build software ! 15 GitϦϙδτϦ ༷ʑͳछྨͷϑΝΠϧΛόʔδϣϯ؅ཧͰ͖Δ .txt .rb

    .sql .png .gif
  16. How people build software ! 16 GitΦϒδΣΫτ • “blob”: ϑΝΠϧͷ಺༰

    • “tree” : σΟϨΫτϦͷ৘ใ • “commit” : ίϛοτͷ৘ใ • “tag” : λά৘ใ ѹॖͯ͠อଘ
  17. How people build software ! 17 “blob”ΦϒδΣΫτ • ςΩετϑΝΠϧ͸ࠩ෼ •

    όΠφϦϑΝΠϧ͸શσʔλ ༰ྔઅ໿ͱޮ཰ͷόϥϯε
  18. How people build software ! 18 ςΩετϑΝΠϧͷࠩ෼֨ೲ • PackfileͱΠϯσοΫεϑΝΠϧ ɹ→

    git gc, git push, git fetch, etc.ɹ .pack .idx
  19. How people build software ! 19 GitHubͰ؅ཧ͢ΔϑΝΠϧͷ͓͢͢Ί • σʔλϕʔεͷμϯϓϑΝΠϧ •

    ϩάϑΝΠϧ GitHubͰ؅ཧ͢ΔͷΛਪ঑͠ͳ͍΋ͷ • ਪ঑ϦϙδτϦαΠζ্ݶɿ1GB • ϑΝΠϧαΠζ্ݶɿ100MB
  20. How people build software ! 20 ϦϙδτϦαΠζ΍ɺϑΝΠϧͷαΠζʹدͬͯ͸ɺ ύϑΥʔϚϯεʹӨڹΛٴ΅͢͜ͱ΋…

  21. How people build software ! 21 ͲΜͳ໰୊͕͋ͬͯɺͲ͏ରॲ͢Ε͹͍͍ʁ

  22. How people build software ! ύϑΥʔϚϯεͷ໰୊Λ Ҿ͖ى͜͢έʔε 22 !

  23. How people build software ! 23 1ͭͷσΟϨΫτϦʹେྔͷϑΝΠϧ͕͋Δ৔߹

  24. How people build software ! 24 ”tree”ΦϒδΣΫτɿσΟϨΫτϦͷ৘ใ “dir_a”σΟϨΫτϦͷதʹɺ”file_a”ͱ”file_b”͕͋Δ file_a file_b

    tree blob blob
  25. How people build software ! 25 ”tree”ΦϒδΣΫτͷੜ੒ • ৽͘͠σΟϨΫτϦΛ࡞੒ͨ͠ͱ͖ •

    σΟϨΫτϦ഑ԼͷϑΝΠϧ͕มߋ͞Εͨͱ͖ ”tree”ΦϒδΣΫτɿσΟϨΫτϦͷ৘ใ
  26. How people build software ! 26 file_aΛมߋͯ͠ΈΔ “dir_a”σΟϨΫτϦ tree: “42b7fbs”

    tree: “48c3474”
  27. How people build software ! 27 tree: “48c3474” tree: “42b7fbs”

    σΟϨΫτϦͷதʹϑΝΠϧ͕େྔʹଘࡏ͢Δͱ ͦͷσΟϨΫτϦ഑ԼͷϑΝΠϧ͕มߋ͞ΕΔͨͼʹɺ େྔͳϑΝΠϧͷ৘ใ͕֨ೲ͞ΕͨtreeΦϒδΣΫτ͕࡞ΒΕΔ
  28. How people build software ! 28 git push΍git fetchͳͲͷλΠϛϯάͰ 2ͭͷΦϒδΣΫτͷڞ௨෦෼Λݟ͚ͭͯPackϑΝΠϧΛ

    ੜ੒͢Δ(IO΍ϝϞϦͷফඅ) git fetch΍git push͕஗͘ͳΔ
  29. How people build software ! 29 αϒσΟϨΫτϦΛ࡞ͬͯϑΝΠϧΛ෼͚Α͏

  30. How people build software ! 30 େ͖ͳςΩετϑΝΠϧ͕͋Δ৔߹

  31. How people build software ! 31 8fd1403 acbd4fb ྫɿେ͖ͳςΩετϑΝΠϧAΛ1ߦ͚ͩมߋ͢Δ 1ߦ௥Ճ

    େ͖ͳΦϒδΣΫτ͕ 2ͭͰ͖Δ git push΍git fetchͳͲͷλΠϛϯάͰ 2ͭͷΦϒδΣΫτͷڞ௨෦෼Λݟ͚ͭͯPackϑΝΠϧΛ ੜ੒͢Δ(IO΍ϝϞϦͷফඅ) git fetch΍git push͕஗͘ͳΔ
  32. How people build software ! 32 όΠφϦϑΝΠϧͱͯ͠औΓѻ͏Α͏ʹ͢Δ “core.bigFileThreshold”ͷ஋Λௐ੔ (σϑΥϧτ 512MB)

    .gitattribute
  33. How people build software ! 33 େ͖ͳόΠφϦϑΝΠϧ͕͋Δ৔߹

  34. How people build software ! 34 όΠφϦϑΝΠϧ͸ɺશͯͷσʔλΛอ࣋͢ΔͨΊɺ ϦϙδτϦࣗମͷαΠζ͕େ͖͘ͳͬͯ͠·͏ GitHubࣗମͷύϑΥʔϚϯεʹ΋Өڹ!ʂ ಛʹΦϯϓϨ൛ͷGitHub

    Enterprise Server git clone͕஗͘ͳΔ େ͖ͳόΠφϦϑΝΠϧ
  35. How people build software ! 35 Git LFSΛ࢖ͬͯɺେ͖ͳόΠφϦϑΝΠϧ͸ ϦϙδτϦͷ֎ʹஔ͜͏ https://github.com/git-lfs/git-lfs

  36. How people build software ! 36 Git LFS όΠφϦϑΝΠϧ͸ผͷ৔ॴʹอଘͯ͠ɺ ୅ΘΓʹϙΠϯλϑΝΠϧΛόʔδϣϯ؅ཧ͢Δ࢓૊Έ

    খ͞ͳςΩετϑΝΠϧ ϙΠϯλϑΝΠϧ
  37. How people build software ! 37 Git LFSͰϑΝΠϧΛτϥοΩϯά ͢Ͱʹίϛοτ͞Ε͍ͯΔϑΝΠϧΛLFSͰτϥοΩϯά ͪΐͬ͜ͱίϚϯυ঺հ

  38. How people build software ! 38 ໰୊͕͋Γͦ͏ͳϑΝΠϧͷݟ͚ͭํ

  39. How people build software ! 39 git lfs migrate info

  40. How people build software ! 40 git-sizer https://github.com/github/git-sizer

  41. How people build software ! 41