|
|
The rmdel command allows removal of a delta from an SCCS file. Its use should be reserved for deltas in which incorrect global changes were made. The delta to be removed must be a leaf delta. That is, it must be the most recently created delta on its branch or on the trunk of the SCCS file tree. In ``Extended branching concept'', only deltas 1.3.1.2, 1.3.2.2, and 2.2 can be removed. Only after they are removed can deltas 1.3.2.1 and 2.1 be removed.
To be allowed to remove a delta, the effective user must have write permission in the directory containing the SCCS file. In addition, the real user must be either the one who created the delta being removed or the owner of the SCCS file and its directory.
The -r keyletter is mandatory with rmdel. It is used to specify the complete SID of the delta to be removed. Thus
$ rmdel -r2.3 s.abcspecifies the removal of trunk delta 2.3.
Before removing the delta, rmdel checks that the release
number (R) of the given SID satisfies the relation
floor is less than or equal to R,
which is less than or equal to ceiling
Floor and ceiling are flags in the SCCS file representing start and end of the range of valid releases.
The rmdel command also checks the SID to make sure it is not for a version on which a get for editing has been executed and whose associated delta has not yet been made. In addition, the login name or group ID of the user must appear in the file's user list (or the user list must be empty). Also, the release specified cannot be locked against editing. That is, if the l flag is set (see admin(CP)), the release must not be contained in the list. If these conditions are not satisfied, processing is terminated, and the delta is not removed.
Once a specified delta has been removed, its type indicator in the delta table of the SCCS file is changed from D (delta) to R (removed).