format of an SCCS file
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 internal keywords),
comments (contains arbitrary descriptive information about the file),
and the body
(contains the actual text lines intermixed with control lines).
Throughout an SCCS file, there are lines which 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 in this description which 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).
The checksum is the first line of an SCCS file.
The form of the line is:
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.
The delta table consists of a variable number of entries of the form:
@d <type> <SCCS ID> yr/mo/da hr:mi:se <pgmr> DDDDDDDDDD
@i DDDDD ...
@x DDDDD ...
@g DDDDD ...
@m <MR number>
@c <comments> ...
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,
The @i, @x, and @g lines contain the serial numbers of deltas
included, excluded, and ignored, respectively.
These lines are optional.
Each @m line (optional) contains one MR
number associated with the delta;
the @c lines contain comments associated with the delta.
The @e line ends the delta table entry.
This list of login names and/or numerical group IDs includes
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.
Any line starting with a !
prohibits the succeeding group or user from making deltas.
Flags are keywords used internally (see admin(CP)
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 <keyword string>
@f m <module name>
@f f <floor>
@f c <ceiling>
@f d <default-sid>
@f l <lock-releases>
@f q <user defined>
@f z <reserved for use in interfaces>
The t flag defines the replacement for the
%Y% 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 present,
this message will cause a ``fatal'' error
(the file will not be received, or the delta will not be made).
When the b flag is present the
-b option may be used with the
get command to cause a branch in the delta tree.
The m flag defines the first choice for the replacement text of
the %M% identification 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 (for example, 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 editing (
with the -e option).
The q flag defines the replacement for
the %Q% identification keyword.
flag is used in specialized interface programs.
Comments are arbitrary text surrounded by the bracketing lines @t and @T.
The comments section typically contains a description of the file's purpose.
The body consists of text lines and control lines.
Text lines do not begin with the control character, control lines do.
There are three kinds of control lines:
insert, delete, and end, as follows:
The digit string DDDDD is the serial number
corresponding to the delta for the control line.
sccsfile is conformant with:
X/Open Portability Guide, Issue 3, 1989
© 2003 Caldera International, Inc. All rights reserved.
SCO OpenServer Release 5.0.7 -- 11 February 2003