|
| sccsfile - format of an SCCS history file |
|
An SCCS file is an ASCII file consisting of six logical parts:
-
checksum
- character count used for error detection
-
delta table
- log containing version info and statistics about each delta
-
usernames
- login names and/or group IDs of users who may add deltas
-
flags
- definitions of internal keywords
-
comments
- arbitrary descriptive information about the file
-
body
- the actual text lines intermixed with control lines
Each section is described in detail below.
Conventions
|
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 as `^A'. If a line described below is not depicted as beginning with the control character, it cannot do so and still be within SCCS file format.
Entries of the form ddddd represent a five digit string (a number between 00000 and 99999).
|
Checksum
|
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 contained in the first line. The ^Ah provides a magic number of (octal) 064001.
|
Delta Table
|
The delta table consists of a variable number of entries of the form:
|
^As inserted/deleted/unchanged
^Ad type sid yr/mo/da hr:mi:se username serial-number predecessor-sn
^Ai include-list
^Ax exclude-list
^Ag ignored-list
^Am mr-number
...
^Ac comments ...
...
^Ae
|
The first line (^As) contains the number of lines inserted/deleted/unchanged respectively. The second line (^Ad) contains the type of
the delta (normal: D, and removed: R), the SCCS ID of the delta, the date and time of creation of the delta, the user-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 ^Ai, ^Ax, and ^Ag lines contain the serial numbers of deltas included, excluded, and ignored, respectively. These lines do not always appear.
The ^Am lines (optional) each contain one MR number associated with the delta; the ^Ac lines contain comments associated with the delta.
The ^Ae line ends the delta table entry.
|
User Names
|
The list of user-names and/or numerical group IDs of users who may add deltas to the file, separated by NEWLINE characters. The lines
containing these login names and/or numerical group IDs are surrounded by the bracketing lines ^Au and ^AU. An empty list
allows anyone to make a delta.
|
Flags
|
Flags are keywords that are used internally (see sccs-admin(1)
for more information on their use). Each flag line takes the form: The following flags are defined in order of appearance:
- ^Af t type-of-program
- Defines the replacement for the 17:21:50 ID keyword.
- ^Af v program-name
- Controls prompting for MR numbers in addition to comments; if the optional text is present it defines an MR number validity
checking program.
- ^Af i
- Indicates that the `No id keywords' message is to generate an error that terminates the SCCS command. Otherwise, the message is treated as a warning only.
- ^Af b
- Indicates that the -b option may be used with the SCCS get command
to create a branch in the delta tree.
- ^Af m module name
- Defines the first choice for the replacement text of the sccsfile.4 ID keyword.
- ^Af f floor
- Defines the "floor" release; the release below which no deltas may be added.
- ^Af c ceiling
- Defines the "ceiling" release; the release above which no deltas may be added.
- ^Af d default-sid
- The d flag defines the default SID to be used when none is specified on
an SCCS get command.
- ^Af n
- The n flag enables the SCCS delta command 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).
- ^Af j
- Enables the SCCS get command to allow concurrent edits of the same base SID.
- ^Af l lock-releases
- Defines a list of releases that are locked against editing.
- ^Af q user defined
- Defines the replacement for the ID keyword.
- ^Af e 0|1
- The e flag indicates whether a source file is encoded or not. A 1 indicates that the file is encoded. Source files need to be encoded when they contain control characters, or when they do not end with a NEWLINE. The e flag allows files that contain binary data to be checked in.
|
Comments
|
Arbitrary text surrounded by the bracketing lines ^At and ^AT. 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 do not begin with the control character, control lines do. There are three kinds of control lines: insert, delete, and end, represented by:
|
^AI ddddd
^AD ddddd
^AE ddddd
|
respectively. The digit string is the serial number corresponding to the delta for the control line.
|
|
|
sccs-admin(1), sccs-cdc(1), sccs-comb(1), sccs-delta(1), sccs-get(1), sccs-help(1), sccs-prs(1), sccs-prt(1), sccs-rmdel(1), sccs-sact(1), sccs-sccsdiff(1), sccs-unget(1), sccs-val(1), sccs(1), what(1)
|
| |