Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ sccs(1) — Dell System V Release 4 Issue 2.2

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

admin(1)

cdc(1)

comb(1)

delta(1)

get(1)

help(1)

prs(1)

rmdel(1)

sact(1)

sccsdiff(1)

unget(1)

val(1)

what(1)

sccsfile(5)

sccs(1)



sccs(1)            UNIX System V(BSD Compatibility Package)             sccs(1)


NAME
      sccs - front end for the Source Code Control System (SCCS)

SYNOPSIS
      /usr/ucb/sccs [ -r ] [ -dprefixpath ] [ -pfinalpath ] command
      [SCCS-flags . . . ] [filename . . . ]

DESCRIPTION
      The sccs command is a front end to the utility programs of the Source
      Code Control System (SCCS).

      sccs normally prefixes each filename, or the last component of each
      filename, with the string `SCCS/s.', because you normally keep your SCCS
      database files in a directory called SCCS, and each database file starts
      with an `s.'  prefix.  If the environment variable PROJECTDIR is set, and
      is an absolute pathname (that is, begins with a slash) sccs will search
      for SCCS files in the directory given by that variable.  If it is a
      relative pathname (that is, does not begin with a slash), it is treated
      as the name of a user, and sccs will search in that user's home directory
      for a directory named src or source.  If that directory is found, sccs
      will search for SCCS files in the directory given by that variable.

      sccs program options must appear before the command argument.  Flags to
      be passed to the actual SCCS command (utility program) must appear after
      the command argument.  These flags are specific to the command being
      used.

      sccs also includes the capability to run ``set user ID'' to another user
      to provide additional protection.  Certain commands (such as admin(1))
      cannot be run ``set user ID'' by all users, since this would allow anyone
      to change the authorizations.  Such commands are always run as the real
      user.

OPTIONS
      -r    Run sccs as the real user rather than as whatever effective user
            sccs is ``set user ID'' to.

      -dprefixpath
            Define the prefix portion of the pathname for the SCCS database
            files.  The default prefix portion of the pathname is the current
            directory.  prefixpath is prefixed to the entire pathname.  See
            EXAMPLE.

            This flag overrides any directory specified by the PROJECTDIR
            environment variable.

      -pfinalpath
            Define the name of a lower directory in which the SCCS files will
            be found; SCCS is the default.  finalpath is appended before the
            final component of the pathname.  See EXAMPLE.




10/89                                                                    Page 1







sccs(1)            UNIX System V(BSD Compatibility Package)             sccs(1)


USAGE
   Additional sccs Commands
      Several ``pseudo-commands'' are available in addition to the usual SCCS
      commands.  These are:

      create      create is used when creating new s.  files.  For example,
                  given a C source language file called `obscure.c', create
                  would perform the following actions: (1) create the `s.'
                  file called `s.obscure.c' in the SCCS directory; (2) rename
                  the original source file to `,obscure.c'; (3) do an `sccs
                  get' on `obscure.c'.  Compared to the SCCS admin command,
                  create does more of the startup work for you and should be
                  used in preference to admin.

      enter       enter is just like create, except that it does not do the
                  final `sccs get'.  It is usually used if an `sccs edit' is to
                  be performed immediately after the enter.

      edit        Get a file for editing.

      delget      Perform a delta on the named files and then get new versions.
                  The new versions have ID keywords expanded, and so cannot be
                  edited.

      deledit     Same as delget, but produces new versions suitable for
                  editing.  deledit is useful for making a ``checkpoint'' of
                  your current editing phase.

      fix         Remove the named delta, but leaves you with a copy of the
                  delta with the changes that were in it.  fix must be followed
                  by a -r flag.  fix is useful for fixing small compiler bugs,
                  etc.  Since fix does not leave audit trails, use it
                  carefully.

      clean       Remove everything from the current directory that can be
                  recreated from SCCS files.  clean checks for and does not
                  remove any files being edited.  If `clean -b' is used,
                  branches are not checked to see if they are currently being
                  edited.  Note: -b is dangerous if you are keeping the
                  branches in the same directory.

      unedit      ``Undo'' the last edit or `get -e' and return a file to its
                  previous condition.  If you unedit a file being edited, all
                  changes made since the beginning of the editing session are
                  lost.

      info        Display a list of all files being edited.  If the -b flag is
                  given, branches (that is, SID's with two or fewer components)
                  are ignored.  If the -u flag is given (with an optional
                  argument), only files being edited by you (or the named user)
                  are listed.



Page 2                                                                    10/89







sccs(1)            UNIX System V(BSD Compatibility Package)             sccs(1)


      check       Check for files currently being edited, like info, but
                  returns an exit code rather than a listing:  nothing is
                  printed if nothing is being edited, and a non-zero exit
                  status is returned if anything is being edited.  check may
                  thus be included in an ``install'' entry in a makefile, to
                  ensure that everything is included in an SCCS file before a
                  version is installed.

      tell        Display a list of files being edited on the standard output.
                  Filenames are separated by NEWLINE characters.  Take the -b
                  and -u flags like info and check.

      diffs       Compare (in diff-like format) the current version of the
                  program you have out for editing and the versions in SCCS
                  format.  diffs accepts the same arguments as diff, except
                  that the -c flag must be specified as -C instead, because the
                  -c flag is taken as a flag to get indicating which version is
                  to be compared with the current version.

      print       Print verbose information about the named files.  print does
                  an `sccs prs -e' followed by an `sccs get -p -m' on each
                  file.

EXAMPLE
      The command:

             sccs  -d/usr/include  get sys/inode.h

      converts to:

            get  /usr/include/sys/SCCS/s.inode.h

      The intent here is to create aliases such as:

            alias  syssccs  sccs  -d/usr/src

      which will be used as:

             syssccs  get  cmd/who.c

      The command:

             sccs  -pprivate  get  usr/include/stdio.h

      converts to:

            get  usr/include/private/s.stdio.h

      To put a file called myprogram.c into SCCS format for the first time,
      assuming also that there is no SCCS directory already existing:




10/89                                                                    Page 3







sccs(1)            UNIX System V(BSD Compatibility Package)             sccs(1)


            $ mkdir SCCS
            $ sccs create myprogram.c
            $ myprogram.c:
            1.1
            14 lines
            after you have verified that everything is all right
            you remove the version of the file that starts with a comma:
            $ rm myprogram.c
            $

      To get a copy of myprogram.c for editing, edit that file, then place it
      back in the SCCS database:

            $ sccs edit myprogram.c
            1.1
            new delta 1.2
            14 lines
            $ vi myprogram.c
            your editing session
            $ sccs delget myprogram.c
            comments? Added abusive responses for compatibility
            1.2
            7 inserted
            7 deleted
            7 unchanged
            1.2
            14 lines
            $

      To get a file from another directory:

            sccs -p/usr/src/sccs/  get cc.c

      or:

            sccs get /usr/src/sccs/cc.c

      To make a delta of a large number of files in the current directory:

            sccs delta *.c

      To get a list of files being edited that are not on branches:

            sccs info -b

      To delta everything that you are editing:

            $ sccs delta `sccs tell -u`

      In a makefile, to get source files from an SCCS file if it does not
      already exist:



Page 4                                                                    10/89







sccs(1)            UNIX System V(BSD Compatibility Package)             sccs(1)


            SRCS = <list of source files>
            $(SRCS):
                  sccs get $(REL) $@

   Regular sccs Commands
      The ``regular'' SCCS commands are described very briefly below.  It is
      unlikely that you ever need to use these commands because the user
      interface is so complicated, and the sccs front end command does 99.9% of
      the interesting tasks for you.

      admin       Create new SCCS files and changes parameters of existing SCCS
                  files.  You can use `sccs create' to create new SCCS files,
                  or use `sccs admin' to do other things.

      cdc         Change the commentary material in an SCCS delta.

      comb        Combine SCCS deltas and reconstructs the SCCS files.

      delta       Permanently introduces changes that were made to a file
                  previously retrieved using `sccs get'.  You can use `sccs
                  delget' as the more useful version of this command since
                  `sccs delget' does all of the useful work and more.

      get         Extract a file from the SCCS database, either for
                  compilation, or for editing when the -e option is used.  Use
                  `sccs get' if you really need it, but `sccs delget' will
                  normally have done this job for you.  Use sccs edit instead
                  of get with the -e option.

      help        Supposed to help you interpret SCCS error messages.

      prs         Display information about what is happening in an SCCS file.

      rmdel       Remove a delta from an SCCS file.

      sccsdiff    Compare two versions of an SCCS file and generates the
                  differences between the two versions.

      val         Determine if a given SCCS file meets specified criteria.  If
                  you use the sccs command, you should not need to use val,
                  because its user interface is unbelievable.

      what        Display SCCS identification information.

FILES
      /usr/sccs/*

SEE ALSO
      admin(1), cdc(1), comb(1), delta(1), get(1), help(1), prs(1), rmdel(1),
      sact(1), sccsdiff(1), unget(1), val(1), what(1), sccsfile(5) in the
      Programmer's Reference Manual



10/89                                                                    Page 5







sccs(1)            UNIX System V(BSD Compatibility Package)             sccs(1)


NOTES
      The help command usually just parrots SCCS error messages and is
      generally not considered very helpful.



















































Page 6                                                                    10/89





Typewritten Software • bear@typewritten.org • Edmonds, WA 98026