Next: , Previous: editinfo, Up: Administrative files


C.7 管理用ファイル loginfo

loginfo を用いて、 ‘cvs commit’ によるログ情報の送り先を管理します。 各行の第一項には正規表現が記述され、 行の残りの部分はフィルタでなくてはいけません。 変更を加えたディレクトリを $CVSROOT からの相対パスで表わしたものと、 各行の正規表現が合致するかどうか試されます。 合致した場合は、 その行の残りの部分であるフィルタ・プログラムの標準入力に、 ログ情報を与えます。

第一項が ‘DEFAULT’ である行の記述は、リポジトリ名が ファイル中のどの正規表現にも合致しない場合に適用されます。

第一項が ‘ALL’ である行全てが、 最初に合致した正規表現または ‘DEFAULT’ に加えて適用されます。

正規表現が合致する最初の行が実行されます。

ファイル loginfo の構文についての記述は See commit files.

使用者はフィルタの一部としてフォーマット文字列を指定できます。文字列は ‘%’ の後に空白か、単独のフォーマット文字、もしくは分離器 ‘{’ と ‘}’ に囲まれたいくつかのフォーマット文字が続いた物 です。フォーマット文字は:

s
ファイル名
V
古いバージョン番号 (格納前)
v
新しいバージョン番号 (格納後)

フォーマット文字列に現れた他の全ての文字は空のフィールドに展開されます (フィールドを分離するコンマはまだ提供されされています。)

例えば、有効なフォーマット文字列は ‘%’, ‘%s’, ‘%{s}’, ‘%{sVv}’ などです。

出力は空白で区切られた語からなる文字列になります。下位互換のために、最 初の語はリポジトリのサブディレクトリになります。残りの語はフォーマット 文字列で要求された情報をコンマで分けたリストです。例えば、 ‘/u/src/master/yoyodyne/tc’ がリポジトリで ‘%{sVv}’ がフォー マット文字列、3つのファイル(ChangeLog, Makefile, foo.c) が 修正されていると、出力は:

     yoyodyne/tc ChangeLog,1.1,1.2 Makefile,1.3,1.4 foo.c,1.12,1.13

別の例として、‘%{}’ ではリポジトリ名のみが作成されます。

注意: cvs が別のマシンのリポジトリを利用している場合、 loginfo はクライアント側ではなく、別のマシン (サーバ) 側で実行されます (see Remote repositories)。