去年の夏にカナダから帰ってきてから、AtlassianのStashでGitな開発をしているのですが、 最近、アサインされたプロジェクトがSubversionでテンション下がったので、 git-svnでチェックアウトしてきて(Windowsマシンでgit svnを使ってみる | shinodogg.com) Stashに突っ込んだりしてるのですが、他の会社の人たちはどーしてるのかなー?って事で、 はじめてテックヒルズ(第5回テックヒルズ『Go to Git !』~さらばSVN~)に参加してみました。ハッシュタグは #techhils #java-jaのキャンセル待ちが繰り上がらなさそうだったって話もある。。 会場は六本木ヒルズの49階のアカデミーヒルズ。 19時ちょっと過ぎについたら、満員御礼的な感じで机がる席に座ることはできませんでした。 ■ GREE 大場さん ・バージョン管理システムの変遷 SCCS。Unixの初期バージョンに付属。ベル研究所で。 Solarisには今でもついてて、Oracleのサイトにマニュアルもある。 バージョン管理っていう概念。 ↓ RCS。SCCSを踏襲。バイナリファイルのサポート。 ロックするとかってのがチームでやるには痛い。 ↓ CVS。時間や場所をこえて。 ↓ Subversion。better CVS。 ↓ git。ブランチを使った並行開発が実用的に。 ・GREEの話 2004年とか 社長が分散管理していた。サーバー毎に入ってるアプリが違ったりw 2005年 藤本さんがSubversion導入 2010年 Gitに移行 2012年 Github Enterprise ■ ドリコムの大仲さん マジカルsvn..。トランクで普段やって、stagingにもってって、最後はリリースブランチ。 チェリーピックして〜 pull request主導のチケット駆動開発したい。svnには障壁が多い。。 知の高速道路。巨人の肩に乗る。 ・リポジトリブラウザ github, bitbucket, gitlab,,, ・TiDD ブランチ切るコストが低い ・意識改革 diff読んでマージっていう流れ pull request投げてrejectされてもイイかな的な。障壁下げる ・ドリコム内ではgitlabを使用 ・既存の数年間的なシステムは? クロスコミット。git-svnブリッジ。 svnにコミットしてもgitにコミットしてもどっちでもOK。 gitに慣れてない人は、重要なコミットなのでsvnで〜とか。 github-flowの導入を試行錯誤中。 ・社内に1人いるgit好きに漏れやすいところ 上を倒す: githubエンタープライズの予算 横を倒す: svnに慣れちゃってる人、デザイナー、、pull requestでキャッキャしてるのをみせる。。 丸一ヶ月。28万リビジョンの移行。スゲー。。。
・継続的に運用 mysqlのレプリケーションとか vagrantを用意して〜とか issue 100到達〜とか ・gitなの? svnだとTiDDやりにくい。なのでgitでもpull requestっていうWeb UIが必要。 SUGEEEナイスな講演。。@onkさんのモチベーション半端ないなと。。カックイイ。。
https://twitter.com/onk/status/315052388375470081
■ CROOZの梅田さん ・技術的負債 subversionでtrunkのみ。 2つ別のリポジトリがあって神がかり的なマージが必要w git移行ついでにまとめてキレイに ⇒ TiDD開発 with Redmine ・ヤックシェービング ブランチ切ってもそれを実行する環境がない ⇒ virtualhost切ってそこにソースを配置 最終的には開発者ごとにvmとか立ち上げてGithub Enterpriseとかから配信にしたいけど、 現状はCapistranoをカマしてgitから取得してデプロイ。 CI(Jenkins)は構築中。 ・Git導入 彼に枯れてしまった稼働中のソース達。150万コミットとか。。大変>< ・偉い人問題 動くものを示さないと。。 上司とモメて会社いずらくなったらCROOZへw ■ モバイルファクトリーの阿部さん 1967年生まれ、SCCS, RCS, CVS,,,ベテラン。 ・動機 分散とか、ローカルで〜とか、社内に居る分には問題にならない。 一番響いたのは、"速い"こと。 CodeRepos, Hithub, perl5がgit管理, Joel Splsky最後のエッセイ ・実行 調査、勉強会、アナウンス、実作業、アフターケア。 ほぼ1人で。(なら、その人の話が聞きたかったかな、と…w) ・その後 速い。マージがお利口。 GHEとか使ってみたい。 ■ KLabの於保さんと牧内さん
・変遷 最初はSVN。intraからAWSへ。 ↓ bazzarが普及。 ↓ リポジトリの管理がやっかい。 ↓ git+githubが使いたい。 ↓ bitbucketとgithubの蜜月 ↓ githubからgithub enterpriseへ ・レビュー コピペした似たようなリポジトリがいっぱい。 Pull Requestのクローラーを作成⇒metaにgithubを使うってことでmetahub ・metahub APIでなんでも出来る。Pull Requestを取ってくるのも簡単。 HTTPSでアクセスするとJSON形式で取得。 ↓ いわゆるプログラムの静的解析。正規表現をWebUIで編集できる。 ↓ タイポとか(true ture) SQLインジェクションとか、Slaveの値でMasterの値を更新してないよね、とか github上でソース公開している。バイナリフィルタとかもある。 ■ パネルディスカッション 印象に残った発言だけ。 ・PullRequestの文化を取り入れられた事が一番大きい。 ・Subversionだとコミッターは神でforkするのも大変だったり。Githubだとその辺容易。 ・.gitkeepどうなの? ・手元(ローカル)でブランチ切りやすくバージョン管理できる ・どのリビジョンが最新かSubversionなら分かるって言われた ・Windows派がツライ ■ 印象に残ったこと 割りとイケイケな感じのWeb系の会社っぽいところでも、偉い人とか、抵抗勢力とか、 そういうのあるんだな〜と。