Next: rcsinfo, Previous: editinfo, Up: Administrative files
loginfo を用いて、
‘cvs commit’ によるログ情報の送り先を管理します。
各行の第一項には正規表現が記述され、
行の残りの部分はフィルタでなくてはいけません。
変更を加えたディレクトリを
$CVSROOT
からの相対パスで表わしたものと、
各行の正規表現が合致するかどうか試されます。
合致した場合は、
その行の残りの部分であるフィルタ・プログラムの標準入力に、
ログ情報を与えます。
第一項が ‘DEFAULT’ である行の記述は、リポジトリ名が ファイル中のどの正規表現にも合致しない場合に適用されます。
第一項が ‘ALL’ である行全てが、 最初に合致した正規表現または ‘DEFAULT’ に加えて適用されます。
正規表現が合致する最初の行が実行されます。
ファイル loginfo の構文についての記述は See commit files.
使用者はフィルタの一部としてフォーマット文字列を指定できます。文字列は ‘%’ の後に空白か、単独のフォーマット文字、もしくは分離器 ‘{’ と ‘}’ に囲まれたいくつかのフォーマット文字が続いた物 です。フォーマット文字は:
フォーマット文字列に現れた他の全ての文字は空のフィールドに展開されます (フィールドを分離するコンマはまだ提供されされています。)
例えば、有効なフォーマット文字列は ‘%’, ‘%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)。