home *** CD-ROM | disk | FTP | other *** search
/ IRIX Base Documentation 2002 November / SGI IRIX Base Documentation 2002 November.iso / usr / share / catman / p_man / cat4 / rcsfile.z / rcsfile
Encoding:
Text File  |  2002-10-03  |  9.3 KB  |  199 lines

  1.  
  2.  
  3.  
  4. RRRRCCCCSSSSFFFFIIIILLLLEEEE((((4444))))                                                          RRRRCCCCSSSSFFFFIIIILLLLEEEE((((4444))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      rcsfile - format of RCS file
  10.  
  11. DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
  12.      An RCS file's contents are described by the grammar below.
  13.  
  14.      The text is free format: space, backspace, tab, newline, vertical tab,
  15.      form feed, and carriage return (collectively, _w_h_i_t_e _s_p_a_c_e) have no
  16.      significance except in strings.  However, white space cannot appear
  17.      within an id, num, or sym, and an RCS file must end with a newline.
  18.  
  19.      Strings are enclosed by @@@@.  If a string contains a @@@@, it must be doubled;
  20.      otherwise, strings may contain arbitrary binary data.
  21.  
  22.      The meta syntax uses the following conventions: `|' (bar) separates
  23.      alternatives; `{' and `}' enclose optional phrases; `{' and `}*' enclose
  24.      phrases that may be repeated zero or more times; `{' and '}+' enclose
  25.      phrases that must appear at least once and may be repeated; Terminal
  26.      symbols are in bbbboooollllddddffffaaaacccceeee; nonterminal symbols are in _i_t_a_l_i_c_s.
  27.  
  28.      _r_c_s_t_e_x_t   ::=  _a_d_m_i_n {_d_e_l_t_a}* _d_e_s_c {_d_e_l_t_a_t_e_x_t}*
  29.  
  30.      _a_d_m_i_n     ::=  hhhheeeeaaaadddd       {_n_u_m};;;;
  31.                     { bbbbrrrraaaannnncccchhhh   {_n_u_m};;;; }
  32.                     aaaacccccccceeeessssssss     {_i_d}*;;;;
  33.                     ssssyyyymmmmbbbboooollllssss    {_s_y_m :::: _n_u_m}*;;;;
  34.                     lllloooocccckkkkssss      {_i_d :::: _n_u_m}*;;;;  {ssssttttrrrriiiicccctttt  ;;;;}
  35.                     { ccccoooommmmmmmmeeeennnntttt  {_s_t_r_i_n_g};;;; }
  36.                     { eeeexxxxppppaaaannnndddd   {_s_t_r_i_n_g};;;; }
  37.                     { _n_e_w_p_h_r_a_s_e }*
  38.  
  39.      _d_e_l_t_a     ::=  _n_u_m
  40.                     ddddaaaatttteeee       _n_u_m;;;;
  41.                     aaaauuuutttthhhhoooorrrr     _i_d;;;;
  42.                     ssssttttaaaatttteeee      {_i_d};;;;
  43.                     bbbbrrrraaaannnncccchhhheeeessss   {_n_u_m}*;;;;
  44.                     nnnneeeexxxxtttt       {_n_u_m};;;;
  45.                     { _n_e_w_p_h_r_a_s_e }*
  46.  
  47.      _d_e_s_c      ::=  ddddeeeesssscccc       _s_t_r_i_n_g
  48.  
  49.      _d_e_l_t_a_t_e_x_t ::=  _n_u_m
  50.                     lllloooogggg        _s_t_r_i_n_g
  51.                     { _n_e_w_p_h_r_a_s_e }*
  52.                     tttteeeexxxxtttt       _s_t_r_i_n_g
  53.  
  54.      _n_u_m       ::=  {_d_i_g_i_t | ....}+
  55.  
  56.      _d_i_g_i_t     ::=  0000 | 1111 | 2222 | 3333 | 4444 | 5555 | 6666 | 7777 | 8888 | 9999
  57.  
  58.  
  59.  
  60.  
  61.  
  62.  
  63.                                                                         PPPPaaaaggggeeee 1111
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. RRRRCCCCSSSSFFFFIIIILLLLEEEE((((4444))))                                                          RRRRCCCCSSSSFFFFIIIILLLLEEEE((((4444))))
  71.  
  72.  
  73.  
  74.      _i_d        ::=  {_n_u_m} _i_d_c_h_a_r {_i_d_c_h_a_r | _n_u_m}*
  75.  
  76.      _s_y_m       ::=  {_d_i_g_i_t}* _i_d_c_h_a_r {_i_d_c_h_a_r | _d_i_g_i_t}*
  77.  
  78.      _i_d_c_h_a_r    ::=  any visible graphic character except _s_p_e_c_i_a_l
  79.  
  80.      _s_p_e_c_i_a_l   ::=  $$$$ | ,,,, | .... | :::: | ;;;; | @@@@
  81.  
  82.      _s_t_r_i_n_g    ::=  @@@@{any character, with @@@@ doubled}*@@@@
  83.  
  84.      _n_e_w_p_h_r_a_s_e ::=  _i_d _w_o_r_d* ;;;;
  85.  
  86.      _w_o_r_d      ::=  _i_d | _n_u_m | _s_t_r_i_n_g | ::::
  87.  
  88.      Identifiers are case sensitive.  Keywords are in lower case only.  The
  89.      sets of keywords and identifiers may overlap.  In most environments RCS
  90.      uses the ISO 8859/1 encoding:  letters are octal codes 101-132, 141-172,
  91.      300-326, 330-366 and 370-377, visible graphic characters are codes
  92.      041-176 and 240-377, and white space characters are codes 010-015 and
  93.      040.
  94.  
  95.      Dates, which appear after the ddddaaaatttteeee keyword, are of the form
  96.      _Y...._m_m...._d_d...._h_h...._m_m...._s_s, where _Y is the year, _m_m the month (01-12), _d_d the day
  97.      (01-31), _h_h the hour (00-23), _m_m the minute (00-59), and _s_s the second
  98.      (00-60).  _Y contains just the last two digits of the year for years from
  99.      1900 through 1999, and all the digits of years thereafter.  Dates use the
  100.      Gregorian calendar; times use UTC.
  101.  
  102.      The _n_e_w_p_h_r_a_s_e productions in the grammar are reserved for future
  103.      extensions to the format of RCS files.  No _n_e_w_p_h_r_a_s_e will begin with any
  104.      keyword already in use.
  105.  
  106.      The _d_e_l_t_a nodes form a tree.  All nodes whose numbers consist of a single
  107.      pair (e.g., 2.3, 2.1, 1.3, etc.)  are on the trunk, and are linked
  108.      through the nnnneeeexxxxtttt field in order of decreasing numbers.  The hhhheeeeaaaadddd field in
  109.      the _a_d_m_i_n node points to the head of that sequence (i.e., contains the
  110.      highest pair).  The bbbbrrrraaaannnncccchhhh node in the admin node indicates the default
  111.      branch (or revision) for most RCS operations.  If empty, the default
  112.      branch is the highest branch on the trunk.
  113.  
  114.      All _d_e_l_t_a nodes whose numbers consist of 2_n fields (_n_>2) (e.g., 3.1.1.1,
  115.      2.1.2.2, etc.)  are linked as follows.  All nodes whose first 2_n-1 number
  116.      fields are identical are linked through the nnnneeeexxxxtttt field in order of
  117.      increasing numbers.  For each such sequence, the _d_e_l_t_a node whose number
  118.      is identical to the first 2_n-2 number fields of the deltas on that
  119.      sequence is called the branchpoint.  The bbbbrrrraaaannnncccchhhheeeessss field of a node
  120.      contains a list of the numbers of the first nodes of all sequences for
  121.      which it is a branchpoint.  This list is ordered in increasing numbers.
  122.  
  123.      The following diagram shows an example of an RCS file's organization.
  124.  
  125.  
  126.  
  127.  
  128.  
  129.                                                                         PPPPaaaaggggeeee 2222
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136. RRRRCCCCSSSSFFFFIIIILLLLEEEE((((4444))))                                                          RRRRCCCCSSSSFFFFIIIILLLLEEEE((((4444))))
  137.  
  138.  
  139.  
  140.                                 Head
  141.                                   |
  142.                                   |
  143.                                   v                        / \
  144.                               ---------                   /   \
  145.         / \          / \      |       |      / \         /     \
  146.        /   \        /   \     |  2.1  |     /   \       /       \
  147.       /     \      /     \    |       |    /     \     /         \
  148.      /1.2.1.3\    /1.3.1.1\   |       |   /1.2.2.2\   /1.2.2.1.1.1\
  149.      ---------    ---------   ---------   ---------   -------------
  150.          ^            ^           |           ^             ^
  151.          |            |           |           |             |
  152.          |            |           v           |             |
  153.         / \           |       ---------      / \            |
  154.        /   \          |       \  1.3  /     /   \           |
  155.       /     \         ---------\     /     /     \-----------
  156.      /1.2.1.1\                  \   /     /1.2.2.1\
  157.      ---------                   \ /      ---------
  158.          ^                        |           ^
  159.          |                        |           |
  160.          |                        v           |
  161.          |                    ---------       |
  162.          |                    \  1.2  /       |
  163.          ----------------------\     /---------
  164.                                 \   /
  165.                                  \ /
  166.                                   |
  167.                                   |
  168.                                   v
  169.                               ---------
  170.                               \  1.1  /
  171.                                \     /
  172.                                 \   /
  173.                                  \ /
  174.  
  175.  
  176. IIIIDDDDEEEENNNNTTTTIIIIFFFFIIIICCCCAAAATTTTIIIIOOOONNNN
  177.      Author: Walter F. Tichy, Purdue University, West Lafayette, IN, 47907.
  178.      Revision Number: 5.7; Release Date: 1998/01/12.
  179.      Copyright c 1982, 1988, 1989 by Walter F. Tichy.
  180.      Copyright c 1990, 1991, 1992, 1993, 1994, 1995 by Paul Eggert.
  181.  
  182. SSSSEEEEEEEE AAAALLLLSSSSOOOO
  183.      ci(1), co(1), ident(1), rcs(1), rcsdiff(1), rcsmerge(1), rlog(1),
  184.      RCSsource(5).
  185.      Walter F. Tichy, RCS--A System for Version Control, _S_o_f_t_w_a_r_e--_P_r_a_c_t_i_c_e &
  186.      _E_x_p_e_r_i_e_n_c_e 11115555, 7 (July 1985), 637-654.
  187.  
  188.  
  189.  
  190.  
  191.  
  192.  
  193.  
  194.  
  195.                                                                         PPPPaaaaggggeeee 3333
  196.  
  197.  
  198.  
  199.