各コミット時にコミットされるものに基づいてログメッセージを対象に実行す るプログラムを指定します。各行には正規表現とコマンドテンプレートを書き ます:
REGULAR_EXPRESSION PROGRAM [ARGUMENTS]
PROGRAM には標準入力からログメッセージが渡されます。
引数のところで使用可能な特殊コードがいくつかあります: %s
はコミ
ットされつつあるファイルの名前に、%V
はコミット前の旧リビジョン
に番号、%v
はコミット後の新リビジョン番号に展開されます。複数の
ファイルを含む場合には各要素は空白で区切られます。たとえばあるコミット
がファイルを2つ含む場合、%s
は hello.c README.txt
に、
%v
は 1.17 1.12
に展開されます。
コードを組み合わせて中括弧で囲むこともできて、その場合には展開単位内は
コンマで区切られ、各単位は空白で区切られます。さっきの例だと、
%{sv}
は hello.c,1.17 README.txt,1.12
に展開されます。
%
の展開が済んだら、展開後文字列の前にリポジトリのフルパスがつ
きます。ですから、展開がすべてすむと次のようになります:
/usr/local/newrepos hello.c,1.17 README.txt,1.12
PROGRAM がノンゼロで終了した場合コミットは失敗し、それ以外の場合は成功 します。(この章の Shared Syntax 節を参照のこと)