Upgrade to Pro — share decks privately, control downloads, hide ads and more …

AimingのGitHubを使った開発フロー

 AimingのGitHubを使った開発フロー

Fujimura Daisuke

June 23, 2012
Tweet

More Decks by Fujimura Daisuke

Other Decks in Programming

Transcript

  1. AimingͷGitHubΛ࢖ͬͨ։ൃϑϩʔ
    גࣜձࣾAiming ౻ଜେհ
    @ The GitHub powered by Agileौ୩, 2012-06-23
    Saturday, June 23, 12

    View Slide

  2. ͓͠ͳ͕͖
    • ࣗݾ঺հ
    • Aimingͷ঺հ
    • AimingͰͷGitHubΛ༻͍ͨ։ൃϑϩʔ
    • ࢓ࣄΛ͍ͯͯ͠ݟ͚ͭͨGitHub Tips
    Saturday, June 23, 12

    View Slide

  3. ࣗݾ঺հ
    • ౻ଜେհ http://fujimuradaisuke.com
    • גࣜձࣾAimingॴଐ
    • RubyϓϩάϥϚʔɺ࠷ۙ͸Haskell͕޷͖
    • @a_matsudaϦεϖΫτ
    Saturday, June 23, 12

    View Slide

  4. Aimingʹ͍ͭͯ
    • ΦϯϥΠϯήʔϜձࣾ
    • Ruby/JavaScriptϓϩάϥϚʔืूதͰ͢ʂ@ffu_ ʹϝϯγϣϯ͍ͩ͘͞
    • ίʔυϨϏϡʔΛ͔ͬ͠Γ͢ΔจԽ͕ࠜ෇͍͍ͯΔ
    • ݩʑ͸gerrit (Google੡ͷίʔυϨϏϡʔγεςϜ) Λ࢖͍ͬͯͨ
    • ࠓ೥ʹೖͬͯGitHubΛ࢖͏ϓϩδΣΫτ͕૿͑ͨ
    • ݱࡏ͸gerritͱซ༻
    • ϓϩδΣΫτ؅ཧπʔϧͱͯ͠͸࢖ͬͯͳ͍ɻϨϏϡʔ༻
    Saturday, June 23, 12

    View Slide

  5. AimingͰΑ͋͘Δ։ൃϑϩʔ
    • aiming/some_repo Λ֤ϝϯόʔ͕ fork
    • fujimura/some_repo ʹτϐοΫϒϥϯνΛ࡞੒
    • fujimura:topic_branch -> aiming:master ʹ pull request
    • pull request্ͰϨϏϡʔɺ୭͔͕Ϛʔδ
    • https://help.github.com/articles/fork-a-repo ʹ४ڌͨ͠΍Γํ
    Saturday, June 23, 12

    View Slide

  6. forkϕʔεͷ։ൃͷྲྀΕ
    aiming/some_repo
    fujimura/some_repo
    master
    fix_something
    ࣗ෼ͷfork͔Βຊମʹ
    pull request͢Δ
    Saturday, June 23, 12

    View Slide

  7. ҰํɺຊମͷϒϥϯνͰ։ൃ͢Δํ๏΋͋Δ
    aiming/some_repo
    master
    fix_something
    ຊମͷϒϥϯν͔Βຊମʹ
    pull request͢Δ
    Saturday, June 23, 12

    View Slide

  8. forkࣜ/ຊମϒϥϯνࣜ Ͳ͕ͬͪྑ͍ͷ͔ʁ
    • forkࣜ
    • ຊମmaster΁ͷޡpush͕ى͖ͳ͍
    • ࣗ෼༻ͷϦϞʔτ͕࡞ΕΔ
    • ϒϥϯνࣜ
    • ϦϞʔτ؅ཧָ͕
    • ຊମ͔Βfetch͢Δख͕ؒল͚Δ
    → Ұ௕Ұ୹Ͱ͢ɻ
    Saturday, June 23, 12

    View Slide

  9. Tips: ϨϏϡʔΛϝϯγϣϯͰ͓ئ͍͢Δ
    • Ͳ͏ͯ͠΋์ஔ͞ΕΔpull request͕ग़ͯ͘Δ
    • ίϝϯτ͸@ͰϝϯγϣϯͰ͖ΔͷͰɺϝϯγϣϯͰϨϏϡʔΛ͓ئ͍͢Δ
    • ֆจࣈͰ͓ئ͍ײΛৢ͢
    Saturday, June 23, 12

    View Slide

  10. Tips: ϖΞGit
    • forkࣜ͸ϦϞʔτͷ؅ཧ͕ͪΐͬͱ೉͍͠
    • Git׳Εͯ͠ͳ͍ͱϒϥϯνൃੜݩͷؒҧ͍ɺrebaseͷؒҧ͍ͳͲ͕සൃ͢Δ
    • ϓϩδΣΫτ։࢝௚ޙ͸Gitͷૢ࡞ΛϖΞͰ΍ΔͱΑ͍
    • ؾ͕͍ͭͨΒΈΜͳͷGitྗ͕UPͯͨ͠
    • ϖΞGitதʹ.gitconfigͷઃఆվળ΋ΨϯΨϯ͢Δ
    Saturday, June 23, 12

    View Slide

  11. Tips: Pull request΁ͷԣ૦
    • ଞͷϓϩδΣΫτͷpull requestʹউखʹίϝϯτ͢Δ
    • ݟͯཉ͍͠ਓʹpull requestͷURLΛૹΓ͚ͭͯɺίϝϯτΛ΋Β͏
    • ͩ͜ΘΓ೿ʹΑΔRubyίʔυͷϚφʔࢦೆͳͲ͕ൃੜ
    • ผϓϩδΣΫτͷHaskellerʹϨϏϡʔΛ͓ئ͍ͨ͠Γ
    • ผϓϩδΣΫτʹಥવϦϑΝΫλϦϯάΛpull requestͨ͠Γ
    • ݁Ռతʹίϛϡχέʔγϣϯ͕૿͑ͯɺ஌ࣝͷڞ༗͕ਐΉ
    • ָ͍͠
    Saturday, June 23, 12

    View Slide

  12. Tips: README.mdΛॻ͘
    • σΟϨΫτϦϧʔτʹREADMEΛஔ͘ͱɺGitHub্ʹදࣔ͞ΕΔ
    • ΠϯετʔϧɺϏϧυɺ࣮ߦͷ΍ΓํΛॻ͍͓ͯ͘ͱͳʹ͔ͱศར
    Saturday, June 23, 12

    View Slide

  13. Tips (͓·͚) ༗໊ਓΛϑΥϩʔ
    • GitHubτοϓϖʔδͷNews Feed͸͢͹Β͍͠৘ใݯ
    • ৽࡞ϥΠϒϥϦͷ৘ใ͸GitHub͕Ұ൪଎͍
    • ༗໊ͳϥΠϒϥϦͷ࡞ऀ͸ยͬ୺͔ΒϑΥϩʔ͢ΔͱΑ͍
    • ΈΜͳͷgist΋໘ന͍
    • Rubyͩͱ @rkh ͕அવ͓קΊ
    • ·ͣ͸GitHubberΛϑΥϩʔͱ͔
    Saturday, June 23, 12

    View Slide

  14. Tips (͓·͚) ༗ྉΞΧ΢ϯτ
    • ϓϥΠϕʔτϦϙδτϦ͸Կ͔ͱศར
    • ࣥචͱ͔…
    • ܾͯ͠׬੒͠ͳ͍WebαʔϏεͱ͔…
    • ਓʹެ։ͨ͘͠ͳ͍ίʔυͱ͔…
    Saturday, June 23, 12

    View Slide

  15. Tips (͓·͚) hubศར͗͢Δ
    • GitHubΛΑΓศརʹͯ͘͠ΕΔgitίϚϯυͷϥούʔ
    • git pull-request ͱ͔Ͱ͖Δ
    • git clone fujimura/some_repo ͰΫϩʔϯͰ͖Δ
    • ৄࡉ͸ͪ͜ΒΛ http://subtech.g.hatena.ne.jp/secondlife/20120611/1339411825
    Saturday, June 23, 12

    View Slide

  16. Tips (͓·͚) GitHubberࣗମ͕໘ന͍
    • ಇ͖ํࣗମ͕͍͢͝໘ന͍Ͱ͢
    • Zach Holman͞Μͷϒϩά(1)ʹ৭ʑࡌͬͯΔͷͰݟͯΈ͍ͯͩ͘͞
    • GitHubࣗମͷྺ࢙͸37signalsͷΠϯλϏϡʔ(2)͕໘ന͍Ͱ͢
    • ʰ৘೤ϓϩάϥϚʔʱʹ΋ΠϯλϏϡʔࡌͬͯ·͢
    • (1) http://zachholman.com/
    • (2) http://37signals.com/svn/posts/2486-bootstrapped-profitable-proud-github
    Saturday, June 23, 12

    View Slide

  17. ·ͱΊ
    • CIͷ࿩͕͠ແͯ͘εΠϚηϯ
    • ࣮͸pull requestຖʹCIճͯ͠Ϗϧυ݁ՌΛίϝϯτͯ͠·͢
    • …࣭͝໰͕͋Ε͹͓ئ͍͠·͢ʂʂʂ
    Saturday, June 23, 12

    View Slide