いくつかのオープンソースなソフトがあった時は,開発が活発なほうを選びたい. Google Code とかだと activity を出してくれてりするけど,
同じ activity の測り方で比較したい.
そもそも activity 表示してくれてないサイトだと比較できない.
今は盛り上がってるよ,じゃなくて継続的に盛り上がってるか知りたい.
などなど問題があるので,自力でやってみた.
その出力が↓にあるNumpyのリポジトリの activity (一日あたりのコミット数)の推移. 2006年あたりから盛り上がってるねーということが分かる.
ちなみに時刻が並んでいるデータ(点過程って言えば正確かな?)だったら何でもパイプ経由で食わせられるので,他の用途にも使えるはず.
今回使うスクリプト(datehist.py
)は
tkf’s gist: 913543 — Gist
からダウンロード出来ます.
このポストの一番下にも載っけてあります.Numpyとmatplotlibが必要です.
Activity を測りたいリポジトリのワーキングディレクトリで,以下を実行. MercurialやGit以外の方法は使ってないので知らない…:
hg log --template '{date}\\n' | datehist.py
git log --format='%at' | datehist.py
datehist.py
に食わす標準入力 (hg log
や git log
の出力)はこんな感じ.
コミットがあった時間の unix time を一行ごとにひたすら吐いてくれる.:
1298586880
1298516219
1298426531
1298426393
1298418897
1298407083
1298387222
1298387170
1295910432
(...以下略)
引数 -t
(省略可)で出力グラフのタイトルを与えられるので,ワーキングディレクトリのあるフルパスをタイトルに使いたければ
hg log --template '{date}\\n' | datehist.py -t `hg root`
git log --format='%at' | datehist.py -t `git rev-parse --show-toplevel`
でOK.
比較したのは,次の4つのプロジェクト
結論: どれもあんまり元気ないなあ…
とりあえず,もろもろの理由から b を使ってみることにした.
datehist.py
の 改善点この方法だと,いちいちローカルに clone 作る必要があるのが難点. リモートのリポジトリのログを見る方法って探せばありそう(←探せ)だし, そうすればwebアプリ的な感じにも出きるよね. 誰かやってくれないかなあ(ぉぃ
追記 (2011-04-12)
何か変更あれば,最新版は tkf’s gist: 913543 — Gist にあげときます.