トップ «前の日記(2019/04/22 (月) ) 最新 次の日記(2019/04/24 (水) )» 編集 RSS feed

HsbtDiary


2019/04/23 (火) [長年日記]

ruby の開発リポジトリを git にした

RubyKaigi 2019 の開催中に @k0kubun 君が「発表が終わったら会期中に残りのタスクは全部やりますよ」と勢いのあるやる気をみせていたので、準備は広範囲にちまちま進めていた、という Ruby のリポジトリの Git 以降に必要な自分に割り振られているものをバンバン直していた。

https://www.ruby-lang.org/en/news/2019/04/23/move-to-git-from-svn/

細かい部分は色々あるんだけど、大体は以下のようなチームプレイで進めていった。

  • @hsbt が現状をヒヤリングしたり、サーバーにログインして調べつつ、2019年の今風の開発でバンバン開発できるように構成を変更したり github に切り出したり、なんかやりたいという人にバンバン権限を渡していった。具体的にはサーバーにログインして svn でコミットすると更新される hook スクリプトを git にして外からコミットしたら反映される、というようなことをあちこちでやっていた。
  • 戦略としては svn -> git-svn -> github となっている部分を svn -> git-svn -> cgit -> github というように今の状態を維持しながら変更を入れればいい中間層として cgit を配置して、svn や git-svn で実行されていたスクリプト色々をほとんど cgit に持っていくことで、本番切り替えば svn に write していたものを cgit に切り替えるだけ、という状態を目指した。
  • だいたい開発をバンバンできるような基盤ができつつあるところで @k0kubun が参戦してだいたい @hsbt がイメージしてる感じでコミットメールや auto formatter などをどんどん git 対応していった。
  • @hsbt は Ruby CI や bugs.ruby-lang.org の git 対応も進めていった。heroku で git を扱う redmine を動かすって実は大変なんだけど、heroku 結構詳しいのでできました。
  • mame さんも後半に参戦して、slack への通知やその他想定してなかったけど必要になりそうなフックを要件を話しているうちに作ってくれた
  • だいたいいいんじゃねとなって切り替えを実施し他のが 4/22 の朝

卜部さんからも指摘あったけど、流石に事前に何時に切り替えます、というアナウンスはしたほうがよかったというのが反省点だったけど、実際には全て課題が解決していたというわけではなくて、Matz が Go と行ったら Go の事案について時間を費やして作業していた人が、だいたいいいんじゃないかと判断してやったのでそこまで気が回らなかったんすよね...

切り替えた後も Ruby CI の表示が足りなかったり、細かい箇所は @nalsh さんが直してくれたり、znz さんも細かいところをあれこれ直してくれた。ありがとうございます。

とまあ、こんな感じで Ruby core team はそれほどマネージャらしいマネージャがいるわけでもなくて、Matz がビジョンを示したら、こういう風に進めるんだというモチベーションがある人が問題を整頓して、それを進めるような仕組みや状況を作って、興味のある人を巻き込んだり乗っていって課題をなぎ倒すという極めてアジャイルな組織になってます。型やパフォーマンス改善のあれこれもこんな感じです。

切り替えた直後に @n0kada が二回ブランチを全部消した時には流石に「言ったこと(独自の設定のある working directory じゃなくてクローンし直してという依頼)はやってくれ」とキレたけど、みんなで頑張って消えたブランチを復旧させたりとバタバタしてなんとか落ち着いたかな、ってところ。

これでどんどん開発できるので各位やっていってください。

Asakusa.rb 第511回

今週は秋葉原の弥生さんのスペースで開催でした。初めて参加した会場だったけど、アクセスも便利で広くて助かりますね。

https://asakusarb.esa.io/posts/935

この日は RubyKaigi 2019 から流れてきたメンバーが結構いて、Switch のプレゼンをもう一度聞いたり、メンバーが git 化乙というケーキを買ってきてくれたのでありがたいありがたいと食べたり、reline という pure ruby 実装の readline のデモを見たりと、自分のやってることの成果自慢!て感じで良かった。