Hatena::Groupsubtech

NaN days

ブログを移転しています。最新の記事は motemen.hatenablog.com へどうぞ

2012-11-28

最近変更されたブランチを列挙する

| 19:25 | 最近変更されたブランチを列挙する - NaN days を含むブックマーク はてなブックマーク - 最近変更されたブランチを列挙する - NaN days

週明けになるとアレ?先週なにしてたっけという気分になるので git-recent-branches というスクリプトを書いて、ここ数日間で変更のあったブランチを一覧しています。

git-rev-parse でコマンドラインオプションを解析してみたかったので、シェルスクリプトになってます。

こんな感じに、7 日以内に更新されたブランチとその最新コミットを一覧できる (node のリポジトリを見てみた):

% git recent-branches --no-merged --days=7 --date=iso     
2012-11-27 18:21:05 -0800 remotes/origin/streams2-net-perf-wip - streams2: Set 'readable' flag on Readable streams [isaacs]
2012-11-27 23:52:49 +0900 remotes/origin/v0.8 - doc: Fix missing link target to 'https.request()' [Ryunosuke SATO]
2012-10-25 13:49:32 -0700 remotes/origin/v0.8.15-release - 2012.11.26, Version 0.8.15 (Stable) [isaacs]

ちなみに一番下の日付が 10-25 なのは、その前のコミットが 11 月だったので一覧に出てきたみたいです。

オプションは以下の通り。実装は単に git-log にいろいろフォーマットを与えているだけです。

  • --no-merged を指定すると現在のブランチにマージ済みのものは表示されない
  • --days=n で何日以内のブランチを見るかを指定
  • --date=format は日付のフォーマット