提案された変更の潜在的なレビュー担当者を特定するツール


8

入力として提案されたパッチとgitリポジトリを受け取り、開発者がパッチをレビューするのに最適な候補であることを識別するツールはありますか?git履歴を使用して、変更されるコードのファイル/セクションで最も経験のある作成者を特定します。

編集:ユースケースは、大規模なオープンソースプロジェクト(OpenStack Compute)であり、マージの提案が出てきて、よく知らないコードのチャンクにマージの提案が表示され、他の誰かの名前を提案されたレビュー担当者のリスト。これにより、その人は、マージ提案を見るための通知を受け取ります。


ファイル履歴に基づいてコードのレビュー担当者として通常のコードモンキーを提案するのは悪い(まったく間違っている)考えです
Lazy Badger

1
@レイジー:なぜ?OPが探しているものの何が問題であり、なぜ「それは悪い(完全に間違っている)...」なのですか?私はそのようなツールが私の職場で非常に役立つと思います。
mattnz

4
申し訳ありませんが、コードレビューの目的のアイデアの違い-「コードモンキー」を採用していません。私の職場では、全員が平等です(他の人よりも平等である場合があります)。コードレビューは、教育とコード品質の目的で使用されるため、すべてがレビュー担当者であり、すべてがレビューされることが期待されています。
mattnz

1
「ほとんどの経験」をどのように定量化したいですか?ほとんどのコード行?最新の編集?1年前にファイル/モジュール全体を作成し、それを触っていない場合、他の誰かが先週いくつかのマイナーな変更を加えた場合、どちらが適していますか?妥当な確実性をもって最良の候補者を自動的に決定する方法はわかりません...
Thomas Owens

1
@ThomasOwens私は質問に詳細を追加しました。
Lorin Hochstein 2012

回答:


6

私はそのようなツールを知りませんが、ベースラインのツールは書くのに十分簡単です:

(for file in $files_touched_by_patch; do
    git blame -p "$file"
done) \
  | grep '^author ' | sed 's/^author *//' \
  | sort | uniq -c | sort -nrk 1

最後に触れた人を一覧表示$files_touched_by_patchし、現在のバージョンで存続するコード行数でソートします。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.