SCCSFILE(5) GENIX Programmer's Manual SCCSFILE(5)
NAME
sccsfile - format of SCCS file
DESCRIPTION
An SCCS file is an ASCII file. It consists of six logical parts:
the checksum, the delta table (contains information about each
delta), user names (contains login names and/or numerical group IDs
of users who may add deltas), flags (contains definitions of inter-
nal keywords), comments (contains arbitrary descriptive information
about the file), and the body (contains the actual text lines inter-
mixed with control lines).
Throughout an SCCS file there are lines that begin with the ASCII
SOH (start of heading) character (octal 001). This character is
hereafter referred to as the control character and will be
represented graphically as @. Any line described below that is not
depicted as beginning with the control character is prevented from
beginning with the control character.
Entries of the form DDDDD represent a five digit string (a number
between 00000 and 99999).
Each logical part of an SCCS file is described in detail below.
Checksum
The checksum is the first line of an SCCS file. The form of
the line is:
@hDDDDD
The value of the checksum is the sum of all characters, except
those of the first line. The @h provides a magic number of
(octal) 064001.
Delta table
The delta table consists of a variable number of entries of the
form:
@s DDDDD/DDDDD/DDDDD
@d <type> <SCCS ID> yr/mo/da hr:mi:se <pgmr> DDDDD DDDDD
@i DDDDD ...
@x DDDDD ...
@g DDDDD ...
@m <MR number>
.
.
.
@c <comments> ...
.
.
.
@e
Printed 11/16/83 1
SCCSFILE(5) GENIX Programmer's Manual SCCSFILE(5)
The first line (@s) contains the number of lines
inserted/deleted/unchanged respectively. The second line (@d)
contains the type of the delta (currently, normal: D, and
removed: R), the SCCS ID of the delta, the date and time of
creation of the delta, the login name corresponding to the real
user ID at the time the delta was created, and the serial
numbers of the delta and its predecessor, respectively.
The @i, @x, and @g lines contain the serial numbers of deltas
included, excluded, and ignored, respectively. These lines are
optional.
The @m lines (optional) each contain one MR number associated
with the delta; the @c lines contain comments associated with
the delta.
The @e line ends the delta table entry.
User names
The list of login names and/or numerical group IDs of users who
may add deltas to the file, separated by new-lines. The lines
containing these login names and/or numerical group IDs are
surrounded by the bracketing lines @u and @U. An empty list
allows anyone to make a delta.
Flags
Keywords used internally (see admin(1) for more information on
their use). Each flag line takes the form:
@f <flag> <optional text>
The following flags are defined:
@f t <type of program>
@f v <program name>
@f i
@f b
@f m <module name>
@f f <floor>
@f c <ceiling>
@f d <default-sid>
@f n
@f j
@f l <lock-releases>
@f q <user defined>
The t flag defines the replacement for the Unix System Command
Manual Page identification keyword. The v flag controls
prompting for MR numbers in addition to comments; if the
optional text is present it defines an MR number validity
checking program. The i flag controls the warning/error aspect
of the ``No id keywords'' message. When the i flag is not
present, this message is only a warning; when the i flag is
Printed 11/16/83 2
SCCSFILE(5) GENIX Programmer's Manual SCCSFILE(5)
present, this message will cause a ``fatal'' error (the file
will not be gotten, or the delta will not be made). When the b
flag is present the -b keyletter may be used on the get command
to cause a branch in the delta tree. The m flag defines the
first choice for the replacement text of the sccsfile.5 iden-
tification keyword. The f flag defines the ``floor'' release;
the release below which no deltas may be added. The c flag
defines the ``ceiling'' release; the release above which no
deltas may be added. The d flag defines the default SID to be
used when none is specified on a get command. The n flag
causes delta to insert a ``null'' delta (a delta that applies
no changes) in those releases that are skipped when a delta is
made in a new release (e.g., when delta 5.1 is made after delta
2.7, releases 3 and 4 are skipped). The absence of the n flag
causes skipped releases to be completely empty. The j flag
causes get to allow concurrent edits of the same base SID. The
l flag defines a list of releases that are locked against edit-
ing (get(1) with the -e keyletter). The q flag defines the
replacement for the identification keyword.
Comments
Arbitrary text surrounded by the bracketing lines @t and @T.
The comments section typically will contain a description of
the file's purpose.
Body
The body consists of text lines and control lines. Text lines
don't begin with the control character, control lines do.
There are three kinds of control lines: insert, delete, and
end, represented by:
@I DDDDD
@D DDDDD
@E DDDDD
respectively. The digit string is the serial number
corresponding to the delta for the control line.
SEE ALSO
sccs(1), admin(1), delta(1), get(1), prs(1), prt(1).
Source Code Control System User's Guide by L. E. Bonanni and C. A.
Salemi.
Printed 11/16/83 3