RCSFILE(5) — NEWS-OS Programmer’s Manual
名称
rcsfile − RCS ファイルの形式
解説
RCS ファイルは ASCII ファイルで、 その内容は下記のような文法に従って記述されます。 テキストはフリーフォーマットです。 すなわち、文字列中以外の、スペース、およびタブ、 改行は特別な意味を持っていません。 文字列は ‘@’ で囲まれています。 文字列が ‘@’ を含んでいる場合、それは二重にしなければなりません。
メタシンタックス (特殊記号) は次のような規約を用います。 ‘|’ (バー) はオプションを区分します。 ‘{’と ‘}’ はオプション文を囲みます。 ‘{’と ‘}∗’ は 0 回以上繰返される文を囲みます。 ‘{’と ‘}+’ は 1 回以上繰返される文を囲みます。 ‘<’と ‘>’ はノンターミナルを囲みます。
<rcstext>::=<admin> {<delta>}∗ <desc> {<deltatext>}∗
<admin>::=head{<num>};
access{<id>}∗;
symbols{<id> : <num>}∗;
locks{<id> : <num>}∗;
comment{<string>};
<delta>::=<num>
date<num>;
author<id>;
state{<id>};
branches{<num>}∗;
next{<num>};
<desc>::=desc<string>
<deltatext>::=<num>
log<string>
text<string>
<num>::={<digit>{.}}+
<digit>::=0 | 1 | ... | 9
<id>::=<letter>{<idchar>}∗
<letter>::=A | B | ... | Z | a | b | ... | z
<idchar>::=スペース、タブ、復帰、キャリッジリターン、および
<special> 以外の任意のアスキー文字
<special>::=; | : | , | @
<string>::=@{任意のアスキー文字。‘@’ は二重に指定のこと。}∗@
識別子は大文字、小文字を区別します。 キーワードは小文字しか使えません。 キーワードのセットと識別子とは重複してもかまいません。
<delta> ノードはツリー構造を形成します。 その番号が一対の数字 (例えば、2.3、2.1、1.3 など) で構成されている すべてのノードは "トランク" 上にあり、 "次の" (降順) でフィールドを通じてリンクされています。 <admin> ノード内の "ヘッド" フィールドというのはその並び中のヘッド (即ち、一番大きな数値の対を持っているフィールド)を指します。
その番号が 2n フィールド (ここで、n≥2) で構成 されているすべての <delta> ノード (例えば、3.1.1.1、2.1.2.2 など) は、 次のようにリンクされています。 即ち、最初の (2n)−1 の番号が同一なすべてのノードは、 "次の" (昇順で) フィールドを通じてリンクされています。 それぞれの並びにおいて、その並び上の delta の最初の 2(n−1) 番の フィールドと同一番号を持つ <delta> ノードは、 ブランチポイントと呼ばれます。 ノードの "ブランチ" フィールドは、 それがブランチポイントとなっている、 すべての並びの最初のノードの番号リストを持っています。 このリストは昇順に並んでいます。
例:
Head
|
|
v
---------
/ \ / \ | | / \ / \
/ \ / \ | 2.1 | / \ / \
/ \ / \ | | / \ / \
/1.2.1.3\ /1.3.1.1\ | | /1.2.2.2\ /1.2.2.1.1.1\
--------- --------- --------- --------- -------------
^ ^ | ^ ^
| | | | |
| | v | |
/ \ | --------- / \ |
/ \ | \ 1.3 / / \ |
/ \ ---------\ / / \-----------
/1.2.1.1\ \ / /1.2.2.1\
--------- \ / ---------
^ | ^
| | |
| v |
| --------- |
| \ 1.2 / |
----------------------\ /---------
\ /
\ /
|
|
v
---------
\ 1.1 /
\ /
\ /
\ /
図 1: リビジョンのツリー構造
識別
著者:Walter F. Tichy, Purdue University, West Lafayette, IN, 47907.
リビジョン番号: 4.700 ; リリース日付: 1992/03/13 .
Copyright © 1982 by Walter F. Tichy.
関連事項
ci(1), co(1), ident(1), rcs(1), rcsdiff(1), rcsintro(1), rcsmerge(1), rlog(1), sccstorcs(8)
NEWS-OSRelease 4.2.1R