Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ rcsfile(4) — DG/UX 4.30

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

ci(1)

co(1)

ident(1)

rcs(1)

rcsdiff(1)

rcsintro(1)

rcsmerge(1)

rlog(1)

sccstorcs(8)



     rcsfile(4)                 DG/UX 4.30                  rcsfile(4)



     NAME
          rcsfile - format of RCS file

     DESCRIPTION
          An RCS file is an ASCII file.  Its contents are described by
          the grammar below.  The text is free format, that is,
          spaces, tabs and new lines have no significance except in
          strings.  Strings are enclosed by `@'.  For a string to
          contain a `@', the '@' must be doubled.

          The meta-syntax uses the following conventions:  `|' (bar)
          separates alternatives; `{' and `}' enclose optinal phrases;
          `{' and `}*' enclose phrases that may be repeated zero or
          more times; `{' and '}+' enclose phrases that must appear at
          least once and may be repeated; `<' and `>' enclose
          nonterminals.


          <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>       ::=  Any printing ASCII character except space,
                              tab, carriage return, new line, and <special>.

          <special>      ::=  ; | : | , | @




     Licensed material--property of copyright holder(s)         Page 1





     rcsfile(4)                 DG/UX 4.30                  rcsfile(4)



          <string>       ::=  @{any ASCII character, with `@' doubled}*@

          Identifiers are case sensitive.  Keywords are lowercase
          only.  The sets of keywords and identifiers may overlap.

          The <delta> nodes form a tree.  All nodes whose numbers
          consist of a single pair (e.g., 2.3, 2.1, 1.3, etc.)  are on
          the "trunk", and are linked through the "next" field in
          order of decreasing numbers. The "head" field in the <admin>
          node points to the head of that sequence (i.e., contains the
          highest pair).

          All <delta> nodes whose numbers consist of 2n fields (where
          n > 2) (e.g., 3.1.1.1, 2.1.2.2, etc.)  are linked as
          follows.  All nodes whose first (2n)-1 number fields are
          identical are linked through the "next" field in order of
          increasing numbers.  For each such sequence, the <delta>
          node whose number is identical to the first 2(n-1) number
          fields of the deltas on that sequence is called the
          branchpoint.  The "branches" field of a node contains a list
          of the numbers of the first nodes of all sequences for which
          it is a branchpoint.  This list is ordered in increasing
          numbers.

          Example:

                                      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  /       |
               ----------------------\     /---------
                                      \   /
                                       \ /



     Licensed material--property of copyright holder(s)         Page 2





     rcsfile(4)                 DG/UX 4.30                  rcsfile(4)



                                        |
                                        |
                                        v
                                    ---------
                                    \  1.1  /
                                     \     /
                                      \   /
                                       \ /


                            Fig. 1: A Revision Tree

     SEE ALSO
          ci(1), co(1), ident(1), rcs(1), rcsdiff(1), rcsintro(1),
          rcsmerge(1), rlog(1), sccstorcs(8).








































     Licensed material--property of copyright holder(s)         Page 3



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026