次: editinfo, 前: commitinfo, 上: Administrative files
一旦ログメッセージを入力すると、bug ID などの特定の内容を調べるために そのメッセージを評価することができます。ログメッセージを検証するための プログラムを指定するために verifymsg ファイルを使用することがで きます。このプログラムは入力されたメッセージに必要なフィールドがあるか どうかを調べる簡単なスプリプトでも良いでしょう。
verifymsg ファイルは、ログメッセージの雛型を指定するために使う ことのできる rcsinfo ファイルと一緒に使用されたときにとても役に 立つことが多いです。
verifymsg ファイルは正規表現とコマンド行の雛型から成ります。雛 型はプログラム名を含んでいなければならず、任意の数の引数を取ることがで きます。現在のログメッセージ雛型ファイルへのフルパスが雛型の最後に追加 されます。
一つ注意しなければならないのは、`ALL' キーワードは使えないという ことです。一行以上合致した場合、最初のものが使われます。これはディレク トリで既定の検証スクリプトを指定して、サブディレクトリで上書きするとき に役に立ちます。
リポジトリ名がこのファイルのどの正規表現にも合致しなければ、 `DEFAULT' が指定されていると、それが使用されます。
検証スクリプトはログメセージを変更できないことに注意してください。単に 受け入れるか拒否するかのどちらかです。
以下は、verifymsg ファイルのちょっとしたばかげた例と、それに対 応する rcsinfo ファイル、ログメッセージの雛型と検証スクリプトで す。まず、ログメッセージの雛型です。常に bug-id 番号をログメッセージの 最初の行に記録します。ログメッセージの残りのテキストは自由に書いたもの です。以下の雛型ファイルは /usr/cvssupport/tc.template にありま す。
BugId:
スクリプト /usr/cvssupoort/bugid.verify はログメッセージの評価 に使われます。
#!/bin/sh # # bugid.verify filename # # Verify that the log message contains a valid bugid # on the first line. # if head -1 < $1 | grep '^BugId:[ ]*[0-9][0-9]*$' > /dev/null; then exit 0 else echo "No BugId found." exit 1 fi
verifymsg ファイルには以下の行があります:
^tc /usr/cvssupport/bugid.verify
rcsinfo ファイルには以下の行があります:
^tc /usr/cvssupport/tc.template