Provided by: manpages-ja_0.5.0.0.20221215+dfsg-1_all bug

名称

       rcsfile - RCS ファイルの書式

解説

       RCS ファイルの内容は以下の文法に基づき記述されます。

       テキストはフリーフォーマットであり、  文字列中のスペース、バックスペース、 タブ、改行、垂直タブ、改頁、復
       帰 (まとめて 空白 と呼びます) は意味を持ちません。 例外として、id, num, sym  内では空白があってはならず、
       RCS ファイルは改行で終わらなければなりません。

       文字列は  @  で括られます。文字列が @ 自身を含む場合、2 重化されなければならず、それ以外は任意の バイナリ
       データを含むことができます。

       以下、簡便のためにメタ文法を用います。 `|' (縦棒) は選言を分けます。 `{'  と  `}'  は省略可能な句を括りま
       す。  `{' と `}*' は 0 回以上繰り返される句を括ります。 `{' と `}+' は 1 回以上繰り返される句を括ります。
       終端記号は 太字 で、非終端記号は 斜体 で表記します。

       rcstext   ::=  admin {delta}* desc {deltatext}*

       admin     ::=  head       {num};
                      { branch   {num}; }
                      access     {id}*;
                      symbols    {sym : num}*;
                      locks      {id : num}*;  {strict  ;}
                      { comment  {string}; }
                      { expand   {string}; }
                      { newphrase }*

       delta     ::=  num
                      date       num;
                      author     id;
                      state      {id};
                      branches   {num}*;
                      next       {num};
                      { newphrase }*

       desc      ::=  desc       string

       deltatext ::=  num
                      log        string
                      { newphrase }*
                      text       string

       num       ::=  {digit | .}+

       digit     ::=  0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9

       id        ::=  {num} idchar {idchar | num}*

       sym       ::=  {digit}* idchar {idchar | digit}*

       idchar    ::=  special を除く任意の可視文字 (visible graphic character)

       special   ::=  $ | , | . | : | ; | @

       string    ::=  @{任意の文字、ただし @ は 2 重化される}*@

       newphrase ::=  id word* ;

       word      ::=  id | num | string | :

       識別子は大文字小文字を区別します。 キーワードは小文字のみです。  キーワードと識別子の集合は重複可能です。
       ほとんどの環境では、RCS  は  ISO  8859/1  エンコーディングを用います。 このコードでは、可視文字のコードが
       041-176 と 240-377 で、 空白文字のコードが 010-015 と 040 です。

       date キーワードの後に現れる日時は Y.mm.dd.hh.mm.ss という書式で、それぞれ Y が年を、 mm が月 (01-12) を、
       dd が日 (01-31) を、 hh が時 (00-23) を、 mm が分 (00-59) を、 ss が秒 (00-60) を表します。 Y は 1900  年
       から  1999  年までは年の最後の  2  桁で表し、それ以降は 年のすべての桁で表します。 日付はグレゴリオ暦を用
       い、時刻は UTC (協定世界時) で表します。

       文法中の newphrase は RCS ファイル書式の今後の拡張のために予約されています。 すでに使われているキーワード
       では newphrase は始まりません。

       複数の delta ノードが集まって、木を形成します。 単一の組からなる番号のノード (例えば 2.3, 2.1, 1.3  など)
       は すべて幹 (trunk) であり、降順で next フィールドを通してリンクされています。 admin ノードの head フィー
       ルドは、このシーケンスの先頭  (head; すなわち最高位の組) を示します。 admin ノードの branch ノードは、 ほ
       とんどの RCS 操作が利用するデフォルトの枝 (もしくはリビジョン) を示します。  もしこれが存在しなければ、幹
       の最高位の枝が用いられます。

       2n 個 (n≥2) のフィールドからなる番号を持つ全 delta ノード (例えば 3.1.1.1, 2.1.2.2 など) は、次のようにリ
       ンクされます。 すなわち、先頭の 2n-1 個のフィールドの番号が等しい全ノードは、昇順で next フィールドを通し
       てリンクされます。 シーケンス中の delta ノードの番号の先頭 2n-2 個分と等しい番号を持つ delta ノードは、そ
       のシーケンスの分岐点と呼ばれます。  ノードの branches フィールドは、 そのノードが分岐点となっている全シー
       ケンスに対し、 最初のノード番号のリストを保持しています。 このリストは昇順で並べられています。

       以下の図は RCS ファイルの構成の例を示しています。

       \h'\n[lss]u'Head
       \h'\n[lss]u'|
       \h'\n[lss]u'|
       \h'\n[lss]u'v                        / \
       \h'\n[lss]u'---------                   /   \
       \h'\n[lss]u'/ \          / \      |       |      / \         /     \
       \h'\n[lss]u'/   \        /   \     |  2.1  |     /   \       /       \
       \h'\n[lss]u'/     \      /     \    |       |    /     \     /         \
       /1.2.1.3\    /1.3.1.1\   |       |   /1.2.2.2\   /1.2.2.1.1.1\
       ---------    ---------   ---------   ---------   -------------
       \h'\n[lss]u'^            ^           |           ^             ^
       \h'\n[lss]u'|            |           |           |             |
       \h'\n[lss]u'|            |           v           |             |
       \h'\n[lss]u'/ \           |       ---------      / \            |
       \h'\n[lss]u'/   \          |       \  1.3  /     /   \           |
       \h'\n[lss]u'/     \         ---------\     /     /     \-----------
       /1.2.1.1\                  \   /     /1.2.2.1\
       ---------                   \ /      ---------
       \h'\n[lss]u'^                        |           ^
       \h'\n[lss]u'|                        |           |
       \h'\n[lss]u'|                        v           |
       \h'\n[lss]u'|                    ---------       |
       \h'\n[lss]u'|                    \  1.2  /       |
       \h'\n[lss]u'----------------------\     /---------
       \h'\n[lss]u'\   /
       \h'\n[lss]u'\ /
       \h'\n[lss]u'|
       \h'\n[lss]u'|
       \h'\n[lss]u'v
       \h'\n[lss]u'---------
       \h'\n[lss]u'\  1.1  /
       \h'\n[lss]u'\     /
       \h'\n[lss]u'\   /
       \h'\n[lss]u'\ /

作者

       Author: Walter F. Tichy, Purdue University, West Lafayette, IN, 47907.
       Manual Page Revision: 1.5.2.1; Release Date: 2001/07/22.
       Copyright © 1982, 1988, 1989 Walter F. Tichy.
       Copyright © 1990, 1991, 1992, 1993, 1994, 1995 Paul Eggert.

関連項目

       rcsintro(1), ci(1), co(1), ident(1), rcs(1), rcsclean(1), rcsdiff(1), rcsmerge(1), rlog(1)
       Walter F. Tichy, RCS--A System for Version Control, Software--Practice & Experience 15,  7  (July  1985),
       637-654.

GNU                                                2001/07/22                                         RCSFILE(5)