.\" .\" CDDL HEADER START .\" .\" The contents of this file are subject to the terms of the .\" Common Development and Distribution License (the "License"). .\" You may not use this file except in compliance with the License. .\" .\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE .\" or http://www.opensolaris.org/os/licensing. .\" See the License for the specific language governing permissions .\" and limitations under the License. .\" .\" When distributing Covered Code, include this CDDL HEADER in each .\" file and include the License file at usr/src/OPENSOLARIS.LICENSE. .\" If applicable, add the following below this CDDL HEADER, with the .\" fields enclosed by brackets "[]" replaced with your own identifying .\" information: Portions Copyright [yyyy] [name of copyright owner] .\" .\" CDDL HEADER END .\" Copyright (c) 2002, Sun Microsystems, Inc. All Rights Reserved. .\" Copyright 1989 AT&T .\" .\" Portions Copyright (c) 2007 Gunnar Ritter, Freiburg i. Br., Germany .\" .\" Sccsid @(#)sccsfile.5 1.7 (gritter) 2/1/07 .\" .\" from OpenSolaris sccsfile 4 "30 Sep 2002" "SunOS 5.11" "File Formats" .TH SCCSFILE 5 "2/1/07" "Heirloom Development Tools" "File Formats" .SH NAME sccsfile \- format of an SCCS history file .SH DESCRIPTION .LP An SCCS file is an \s-1ASCII\s+1 file consisting of six logical parts: the checksum, the delta table (a log containing version information 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), and the body (the actual text lines intermixed with control lines). Each section is described in detail below. .PP Throughout an SCCS file there are lines which begin with the \s-1ASCII SOH\s+1 (start of heading) character (octal 001). This character is hereafter referred to as the \fIcontrol character\fR, and will be represented as `\fB@\fR'. 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. .PP Entries of the form \fIddddd\fR represent a five digit string (a number between 00000 and 99999). .SS Checksum The checksum is the first line of an SCCS file. The form of the line is: .sp .in +2 .nf @ h\fIddddd\fR .fi .in -2 .sp The value of the checksum is the sum of all characters, except those contained in the first line. The \fB@h\fR provides a \fImagic number\fR of (octal) 064001. .SS Delta Table The delta table consists of a variable number of entries of the form: .sp .in +2 .nf @s \fIinserted\|\fR/\fIdeleted\fR/\fIunchanged\fR @d \fItype sid yr\fR/\fImo\fR/\fIda hr\fR:\fImi\fR:\fIse username serial-number \e predecessor-sn\fR @i \fIinclude-list\fR @x \fIexclude-list\fR @g \fIignored-list\fR @m \fImr-number\fR \&. . . @c \fIcomments\fR . . . \&. . . @e .fi .in -2 .sp The first line (\fB@s\fR) contains the number of lines inserted/deleted/unchanged respectively. The second line (\fB@d\fR) contains the type of the delta (normal: \fBD\fR and removed: \fBR\fR), 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 \fB@i\fR, \fB@x\fR, and \fB@g\fR lines contain the serial numbers of deltas included, excluded, and ignored, respectively. These lines do not always appear. .PP The \fB@m\fR lines (optional) each contain one MR number associated with the delta. The \fB@c\fR lines contain comments associated with the delta. .PP The \fB@e\fR line ends the delta table entry. .SS 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 \fB@u\fR and \fB@U\fR. An empty list allows anyone to make a delta. .SS Flags Flags are keywords that are used internally (see \fIadmin\fR(1) for more information on their use). Each flag line takes the form: .RS .TP 3 @f \fIflag\fR \fIoptional text\fR .RE .PP The following flags are defined in order of appearance: :RS .TP 3 \fB@f t\fR \fItype-of-program\fR Defines the replacement for the \fB11:31:49\fR ID keyword. .TP \fB@f v\fR \fIprogram-name\fR Controls prompting for MR numbers in addition to comments. If the optional text is present, it defines an MR number validity checking program. .TP \fB@f i\fR \fR Indicates that the `\fBNo id keywords\fR' message is to generate an error that terminates the SCCS command. Otherwise, the message is treated as a warning only. .TP \fB@f b\fR \fR Indicates that the \fB\-b\fR option may be used with the SCCS \fIget\fR command to create a branch in the delta tree. .TP \fB@f m\fR \fImodule-name\fR Defines the first choice for the replacement text of the \fIsccsfile.5\fR ID keyword. .TP \fB@f f\fR \fIfloor\fR Defines the "floor" release, that is, the release below which no deltas may be added. .TP \fB@f c\fR \fIceiling\fR Defines the "ceiling" release, that is, the release above which no deltas may be added. .TP \fB@f d\fR \fIdefault-sid\fR The \fBd\fR flag defines the default SID to be used when none is specified on an SCCS \fIget\fR command. .TP \fB@f n\fR \fR The \fBn\fR flag enables the SCCS \fIdelta\fR command to insert a "null" delta (a delta that applies \fIno\fR changes) in those releases that are skipped when a delta is made in a \fInew\fR release (for example, when delta 5.1 is made after delta 2.7, releases 3 and 4 are skipped). .TP \fB@f j\fR \fR Enables the SCCS \fIget\fR command to allow concurrent edits of the same base \s-1SID\s+1. .TP \fB@f l\fR \fIlock-releases\fR Defines a list of releases that are locked against editing. .TP \fB@f q\fR \fIuser-defined\fR Defines the replacement for the \fB\fR ID keyword. .TP \fB@f e\fR \fB0\fR|\fB1\fR The \fBe\fR flag indicates whether a source file is encoded or not. A \fB1\fR 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 \fBe\fR flag allows files that contain binary data to be checked in. .RE .SS Comments .LP Arbitrary text surrounded by the bracketing lines \fB@t\fR and \fB@T\fR. The comments section typically will contain a description of the file's purpose. .sp .SS Body .LP 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: \fIinsert\fR, \fIdelete\fR, and \fIend\fR, represented by: .PP .in +2 .nf @I \fIddddd\fR @D \fIddddd\fR @E \fIddddd\fR .fi .in -2 .PP respectively. The digit string is the serial number corresponding to the delta for the control line. .SH SEE ALSO admin(1), delta(1), get(1), prs(1)