Successful gitを試してみたが…

   株式会社リゾーム 尾古 豊明
       @patorash
       2012/6/16
自己紹介
• 名前:尾古 豊明(@patorash)
• #R社 所属(4カ月目)
• 個人事業主してたけど就職したくなって
  ソーシャル就活をして愛媛から岡山へ。
• Android, PHP, Ruby, JavaScript, jQuery, GAEな
  どを適当にこなす。最近はRuboto(JRuby on
  Android)の研究してる。
• 好きなgitのコマンドは git merge です。
  自分が作った変更がmasterにマージされた
  ときは快感ですね!
告知
•   第2回メタプログラミングRuby読書会
•   日時:8月4日(土)
•   場所:パトランド(@patorashの家)
•   やること:
    – 本の音読
    – 写経
• 懇親会は
    – パトランド名物:たこ焼き
• URL: http://atnd.org/events/29989
今日はR社のgit事例紹介
 みたいなもんです。
ところでgitのベストプラクティ
        スって
       あるの?
あった
A successful Git branching model
gitのブランチの運用方法に参考
        に
• A successful Git branching modelを翻訳して
  くださっている方がいますので読みま
  しょう。
• http://keijinsonyaban.blogspot.jp/2010/10/su
  ccessful-git-branching-model.html
R社でやってみた
Local
release yamasa jenkins github feature develop     hot-fix    master     tag
 sever (develop)       (develop) branch
                                                                      v.1.0.0
                                                                     v.1.0.0に
                                                              タグから   不具合
                                                              修正用
                               開発                             ブランチ作成
                                                       マージ            v.1.0.1
                                           マージ
                                                 マージ
            テストが
            通ったら
    リリース
            push                    push




                               開発
            テストが
                                           マージ
            通らないと
            Pushしない            間違えてpush




                               開発

            テストが                           マージ
            通ったら
    リリース
            push                    push
                                                                      v.1.1.0
Successful gitのモデルは…
• 基本的に自社サービスをASP型で提供する
  モデルであり、全てのユーザが最新バー
  ジョンを使っているのが前提(と思
  う)。
• リリース版でバグが見つかっても最新の
  タグを修正してマージすれば解決する。
A successful Git branching model
これからR社の現実の話をしよ
       う
Local
      release yamasa jenkins github feature develop          hot-fix    master      tag
       severs (develop)      (develop) branch
ASP    A社    B社
                                                                                   v.1.0.0
 たくさんのリリー
    ス先
                                                                                     v.1.0.0に
                     テストが
                                     開発          マージ                                 不具合
                     通ったら
             リリース    push

                                          push
                                                                                 タグから
                  1.0.0ベースだがお                           既にリリース済み                 修正用
                  客さん要望による           開発                 の環境にhot-fixを
                        違い                                                       ブランチ作成
                                                 マージ    配布する方法は?
                                          push
                                                                                  政治的理由で
                                                                                 気軽につけられな
                  1.0.0ベースだがお                                                        い
                  客さん要望による                                                        バージョンNo
                                     開発
                        違い
                                                 マージ
                                          push



                     テストが                              マージ
                     通ったら
             リリース
                     push                                         マージ
                                                                                   v.1.0.1


            だいぶ機能増えて
            るけどここにリ
              リース
            しても大丈夫?
                                                                                   v.1.1.0
R社のモデルは…
• 自社サービスをASP型と設置型で提供する
  モデルであり、複数のバージョンが混在
  する。

• だいぶ後になって古いバージョンでバグ
  が発見された場合に、それ以降の全ての
  バージョンにhot-fixを配布していくのが大
  変。

• お客さんが増えれば増えるほど、管理が
  複雑になってバージョン管理コストが増
なんというか…
Unsuccessful git…
(´・ω・`)
そこで皆さんにお聞きしたい!
• 今までの話を聞いて、うちではこうして
  るよーとか、こうしたほうがいいんじゃ
  ないか?という意見がありましたら、是
  非とも教えてくれませんでしょうか?
• この後や、懇親会の時や、はたまたtwitter
  上など、いつでも絡んできてください。
• @patorash, @LuckOfWise, @kazuhisa1976,
  @ore_public, @zephiransas, @dolbakky777
  辺りにお願いします。
あと、大事なことなので。
#R社 求人募集
• 現在、#R社 では、
 – 優秀なネットワーク管理者
 – 素敵な感性のもつデザイナー
 – お客さんと話をするのが大好きなエンジニア
 を募集しています。

 我こそはという方や、こういう人がいる
から
 紹介しますよという方、よろしくお願い
します。

※プログラマの場合はこちらから声をかけ
ご清聴ありがとうございました

Successful git

  • 1.
    Successful gitを試してみたが… 株式会社リゾーム 尾古 豊明 @patorash 2012/6/16
  • 2.
    自己紹介 • 名前:尾古 豊明(@patorash) •#R社 所属(4カ月目) • 個人事業主してたけど就職したくなって ソーシャル就活をして愛媛から岡山へ。 • Android, PHP, Ruby, JavaScript, jQuery, GAEな どを適当にこなす。最近はRuboto(JRuby on Android)の研究してる。 • 好きなgitのコマンドは git merge です。 自分が作った変更がmasterにマージされた ときは快感ですね!
  • 3.
    告知 • 第2回メタプログラミングRuby読書会 • 日時:8月4日(土) • 場所:パトランド(@patorashの家) • やること: – 本の音読 – 写経 • 懇親会は – パトランド名物:たこ焼き • URL: http://atnd.org/events/29989
  • 4.
  • 5.
  • 6.
  • 7.
    A successful Gitbranching model
  • 8.
    gitのブランチの運用方法に参考 に • A successful Git branching modelを翻訳して くださっている方がいますので読みま しょう。 • http://keijinsonyaban.blogspot.jp/2010/10/su ccessful-git-branching-model.html
  • 9.
  • 10.
    Local release yamasa jenkinsgithub feature develop hot-fix master tag sever (develop) (develop) branch v.1.0.0 v.1.0.0に タグから 不具合 修正用 開発 ブランチ作成 マージ v.1.0.1 マージ マージ テストが 通ったら リリース push push 開発 テストが マージ 通らないと Pushしない 間違えてpush 開発 テストが マージ 通ったら リリース push push v.1.1.0
  • 11.
    Successful gitのモデルは… • 基本的に自社サービスをASP型で提供する モデルであり、全てのユーザが最新バー ジョンを使っているのが前提(と思 う)。 • リリース版でバグが見つかっても最新の タグを修正してマージすれば解決する。
  • 12.
    A successful Gitbranching model
  • 13.
  • 14.
    Local release yamasa jenkins github feature develop hot-fix master tag severs (develop) (develop) branch ASP A社 B社 v.1.0.0 たくさんのリリー ス先 v.1.0.0に テストが 開発 マージ 不具合 通ったら リリース push push タグから 1.0.0ベースだがお 既にリリース済み 修正用 客さん要望による 開発 の環境にhot-fixを 違い ブランチ作成 マージ 配布する方法は? push 政治的理由で 気軽につけられな 1.0.0ベースだがお い 客さん要望による バージョンNo 開発 違い マージ push テストが マージ 通ったら リリース push マージ v.1.0.1 だいぶ機能増えて るけどここにリ リース しても大丈夫? v.1.1.0
  • 15.
    R社のモデルは… • 自社サービスをASP型と設置型で提供する モデルであり、複数のバージョンが混在 する。 • だいぶ後になって古いバージョンでバグ が発見された場合に、それ以降の全ての バージョンにhot-fixを配布していくのが大 変。 • お客さんが増えれば増えるほど、管理が 複雑になってバージョン管理コストが増
  • 16.
  • 17.
  • 18.
  • 19.
    そこで皆さんにお聞きしたい! • 今までの話を聞いて、うちではこうして るよーとか、こうしたほうがいいんじゃ ないか?という意見がありましたら、是 非とも教えてくれませんでしょうか? • この後や、懇親会の時や、はたまたtwitter 上など、いつでも絡んできてください。 • @patorash, @LuckOfWise, @kazuhisa1976, @ore_public, @zephiransas, @dolbakky777 辺りにお願いします。
  • 20.
  • 21.
    #R社 求人募集 • 現在、#R社では、 – 優秀なネットワーク管理者 – 素敵な感性のもつデザイナー – お客さんと話をするのが大好きなエンジニア を募集しています。 我こそはという方や、こういう人がいる から 紹介しますよという方、よろしくお願い します。 ※プログラマの場合はこちらから声をかけ
  • 22.