Slide 1

Slide 1 text

How to get your pull requests merged ۜ࠲Rails#9 2019/05/30 @yahonda

Slide 2

Slide 2 text

ࣗݾ঺հͱ2ͭͷࢹ఺ • Rails contributor • Maintainer of Active Record Oracle enhanced adapter • Pull requestΛૹΔཱ৔ͱड͚औΔཱ৔

Slide 3

Slide 3 text

࿩͢͜ͱɺ࿩͞ͳ͍͜ͱ • ࿩͢͜ͱ • RailsϑϨʔϜϫʔΫͷ։ൃମ੍ • Railsʹpull requestΛૹΔͱ͖ʹ͢Δ͜ͱɺ͠ͳ͍͜ͱ • ࿩͞ͳ͍͜ͱ • ίʔυ • https://railsguides.jp/contributing_to_ruby_on_rails.html

Slide 4

Slide 4 text

͋ͳͨ͸ͳͥRailsʹpull requestΛ͓͘Δͷ͔

Slide 5

Slide 5 text

͋ͳͨͷ՝୊Λղܾ͢ΔͨΊ

Slide 6

Slide 6 text

ͦͷͨΊʹඞཁͳ͜ͱ

Slide 7

Slide 7 text

ͦͷpull request͕Railsʹऔ Γࠐ·ΕΔ΂͖ཧ༝Λίϛο λʔʹೲಘͯ͠΋Β͏͜ͱ

Slide 8

Slide 8 text

RailsϑϨʔϜϫʔΫ։ൃମ੍ • ϦϦʔεεέδϡʔϧ • ίϛϡχςΟ • Pull requestΛϚʔδͰ͖Δͷ͸୭͔ • ݴޠ • ࣌ࠩ

Slide 9

Slide 9 text

͋ͳͨͷRailsΞϓϦέʔγϣ ϯ։ൃମ੍ͱಉ͡ͱ͜Ζ΋͋ Δ͠ɺҧ͏ͱ͜Ζ΋͋Δ

Slide 10

Slide 10 text

ϦϦʔεεέδϡʔϧ • RailsͷϦϦʔεαΠΫϧ • Major, Minor: ೥୯ҐɺTeeny: ݄୯Ґ • Ծʹࠓ೔ɺpull requestϚʔδ͞Εͯೖͬͨ৽ػೳ͕Ϧ Ϧʔε͞ΕΔͷ͸Rails 6.1(͓ͦΒ͘2020೥Ҏ߱) • ͋ͳͨͷRailsΞϓϦέʔγϣϯͷϦϦʔεαΠΫϧ ͸ɺ͓ͦΒͦ͘ΕΑΓ୹͍͸ͣ

Slide 11

Slide 11 text

ίϛϡχςΟ • DHH / Rails core / Rails committer • Rails contributors • ಉ͡ձࣾ/૊৫Ͱຖ೔Ұॹʹ͍ΔΘ͚Ͱ͸ͳ͍ • ίϛϡχςΟϝϯόʔ͕RailsʹٻΊΔ΋ͷ͸ͦΕͧΕҟ ͳΔ • ͋ͳ͕ͨRailsʹٻΊΔ΋ͷΛΘ͔ͬͯ΋Β͏ඞཁ͕͋Δ

Slide 12

Slide 12 text

Pull requestΛϚʔδ͢Δͷ͸ • ࠷େ18ਓͷRailsίϛολʔ • ΞΫςΟϒͳίϛολʔ͸΋ͬͱগͳ͍ • 700Ҏ্ͷopen pull requests • ໿39 pull requests / ίϛολʔ • ͋ͳͨͷRailsΞϓϦέʔγϣϯͷϨϏϡʔମ੍ͱൺ΂ͯΈ ·͠ΐ͏

Slide 13

Slide 13 text

ݴޠ • Ruby • ίʔυ • ӳޠ • ίϛοτϝοηʔδ • Pull requestͰͷ΍ΓͱΓ

Slide 14

Slide 14 text

࣌ࠩ • Rails ίϛολʔ͸ੈքதʹ͍Δ • ͋ͳͨͷ৸͍ͯΔؒʹpull request͕ϨϏϡʔ ͞ΕΔ͔΋͠Εͳ͍

Slide 15

Slide 15 text

Railsʹpull requestΛૹΔ ࣌ɺͦͯ͠ૹͬͨޙʹͳʹΛ ͢Δ͔ɺ͠ͳ͍͔

Slide 16

Slide 16 text

Pull requestΦʔϓϯ͢Δ࣌ʹ • Pull requestΛϚʔδ͢Δཧ༝Λઆ໌͍ͯ͠Δ͔ • ͋ͳͨͷ՝୊͔ͩΒཧ༝͸આ໌Ͱ͖Δ͸ͣ • Ͱ͖Δ͜ͱΛ΍ΔɺͰ͖Δ͜ͱ͸΍Δ • ʮ͍ͭͷ೔͔ૹΔʯ͸΍ͬͯ͜ͳ͍͔΋͠Εͳ͍ • ʮ͜͏ͩͬͨΒ͍͍ͷʹʯͱ͍͏ίϝϯτΛॻ͘ͳ Βɺগ͠Ͱ΋ͦͷʮ͜͏ʯΛίʔυʹ͢Δ

Slide 17

Slide 17 text

Pull requestΛΦʔϓϯͨ͠ޙ • ͋ͤΒͳ͍Ͱ൓ԠΛ଴ͭ • Ϛʔδͯ͠΋Β͏ͨΊʹඞཁͳ৘ใΛॻ͖ ੾͍ͬͯΕ͹ɺޙ͸͢Δ͜ͱ͸ͳ͍͸ͣ

Slide 18

Slide 18 text

ϨϏϡʔ΍࣭໰͕དྷͨΒ • Pull request಺Ͱίʔυ͔ӳޠͰճ౴͢Δ • ڵຯΛ࣋ͨΕ͍ͯΔؒʹճ౴͢Δ • ϨϏϡʔ΍࣭໰Λແࢹ͠ͳ͍

Slide 19

Slide 19 text

ෳ਺ਓ͔Βίϝϯτ͕དྷͨΒ • ίϛολʔʹೲಘͯ͠΋Β͏͜ͱʹ஫ྗ͢Δ • Ϛʔδ͢Δݖݶͷͳ͍ਓΛઆಘͯ͠΋࢓ํ͕ ͳ͍ɺͱ͍͏ݱ࣮΋͋Δ • ௕͘ͳΕ͹ͳΔ΄Ͳऩर͕͚ͭʹ͍͘

Slide 20

Slide 20 text

ϨϏϡʔ͕Θ͔Βͳ͔ͬͨΒ • Θ͔͍ͬͯΔ෦෼ΛαϚϦʔͯ͠ฦࣄ͢Δ • ஌Βͳ͔ͬͨ͜ͱʹରͯ͠Sorryͱ͍Θͳ͍ • ஌Βͳ͔ͬͨ͜ͱΛڭ͑ͯ͘Εͨ͜ͱʹײँ Λ͠ɺͦΕΛ;·͑ͨίʔυมߋΛ͢Δ

Slide 21

Slide 21 text

ϨϏϡʔʹࢍ੒Ͱ͖ͳ͔ͬͨΒ • ࢍ੒Ͱ͖ͳ͍ཧ༝Λॻ͘ • ʮϨϏϡʔ͋Γ͕ͱ͏ɺͰ΋ࢲ͸͜Ε͕޷ ΈʯͰ΋Α͍ • ୯७ʹແࢹ͠ͳ͍

Slide 22

Slide 22 text

୭͔Β΋Կͷ൓Ԡ΋ͳ͔ͬͨΒ • ΈΜͳ͕࢖͏Ձ஋͕͋Δ΋ͷͩͱpull request ୯ಠͰઆ໌͍ͯ͠Δ͔ɺ΋͏͍ͪͲಡΜͰΈ ·͠ΐ͏ • ͋ͳͨͷϢʔεέʔε͸આ໌͞Ε͍ͯ·͔͢ • ڵຯΛҾ͘pull requestͰ͋Ε͹ɺԿ͔͠Βͷ ൓Ԡ͕͋Δ͸ͣ

Slide 23

Slide 23 text

Pull requestͷϝϯςφϯε • ίϯϑϦΫτΛղফ͓ͯ͘͠ • CI͸greenʹ͓ͯ͘͠

Slide 24

Slide 24 text

Pull request͕ෆཁʹͳͬͨΒ • Ϋϩʔζ͢Δ • ʮࢲ͸΋͏ཁΒͳ͍͚Ͳɺଞͷ୭͔͕ඞཁ͔ ΋͠Εͳ͍ʯͱ͍͏ͷ͸ߟ͑ͳͯ͘Α͍

Slide 25

Slide 25 text

Pull requestΛΦʔϓϯͨ͠ޙ ʹ΍Βͳ͍͜ͱ • ping͠ͳ͍ / any updates? ͱ͔΋͍Θͳ͍ • ʮϚʔδ͢΂͖ཧ༝ʯΛҰͭ΋આ໌͍ͯ͠ͳ ͍͔Β

Slide 26

Slide 26 text

Ϛʔδ͞ΕͣΫϩʔζ͞ΕͨΒ • Ϋϩʔζ͞Εͨissue΍pull requestʹίϝϯτ ͠ͳ͍ • ʮࣺͯ୆ࢺʯ͸͔͔ͳ͍

Slide 27

Slide 27 text

Ϋϩʔζ͞Εͨpull requestΛ ࠶νϟϨϯδͨ͘͠ͳͬͨΒ • ͍ͬͨΜΫϩʔζ͞Εͨpull requestͱಉ͡୊ࡐ Λ෮׆ͤ͞Δͷ͸ࠔ೉Ͱ͋Δ • ͕࣌ؒܦͭͷΛ଴ͭ • ൣғΛখ͘͢͞ΔɺΞϓϩʔνΛม͑Δ • ൑அ͕มΘΔ͔΋͠Εͳ͍ɺલఏ͕มΘΔ͔΋ ͠Εͳ͍ɺϝϯςφʔ͕ସΘΔ͔΋͠Εͳ͍

Slide 28

Slide 28 text

Pull request͕Ϛʔδ͞ΕͨΒ • https://contributors.rubyonrails.org • https://y-yagi.hatenablog.com • ࣍ͷRails͕ϦϦʔε͞ΕΔͷΛ଴ͪ·͠ΐ͏ • ͋ͳͨͷcommitͷੵΈॏͶͰɺ͋ͳͨ͸Rails ίϛϡχςΟʹ஌ΒΕ͍ͯ͘Α͏ʹͳΓ·͢

Slide 29

Slide 29 text

OSSύονձ΁Ͳ͏ͧ ࣍ճ͸6݄6೔