1SCCS(P)                    POSIX Programmer's Manual                   SCCS(P)
2
3
4

NAME

6       sccs - front end for the SCCS subsystem (DEVELOPMENT)
7

SYNOPSIS

9       sccs [-r][-d path][-p path] command [options...][operands...]
10

DESCRIPTION

12       The  sccs utility is a front end to the SCCS programs. It also includes
13       the capability to run set-user-id to another user to provide additional
14       protection.
15
16       The  sccs utility shall invoke the specified command with the specified
17       options and operands. By default, each of the operands shall  be  modi‐
18       fied by prefixing it with the string "SCCS/s." .
19
20       The command can be the name of one of the SCCS utilities in this volume
21       of IEEE Std 1003.1-2001 ( admin, delta, get, prs, rmdel,  sact,  unget,
22       val,  or  what)  or  one of the pseudo-utilities listed in the EXTENDED
23       DESCRIPTION section.
24

OPTIONS

26       The sccs utility shall  conform  to  the  Base  Definitions  volume  of
27       IEEE Std 1003.1-2001,  Section  12.2, Utility Syntax Guidelines, except
28       that options operands are actually options to be passed to the  utility
29       named by command.  When the portion of the command:
30
31
32              command [options ... ] [operands ... ]
33
34       is  considered,  all of the pseudo-utilities used as command shall sup‐
35       port the Utility Syntax Guidelines. Any of  the  other  SCCS  utilities
36       that can be invoked in this manner support the Guidelines to the extent
37       indicated by their individual OPTIONS sections.
38
39       The following options shall be supported preceding the command operand:
40
41       -d  path
42              A pathname of a directory to be used as a root directory for the
43              SCCS  files.  The default shall be the current directory. The -d
44              option shall take precedence over the PROJECTDIR variable.   See
45              -p.
46
47       -p  path
48              A  pathname  of a directory in which the SCCS files are located.
49              The default shall be the SCCS directory.
50
51       The -p option differs from the -d option in that the -d option-argument
52       shall  be  prefixed  to  the entire pathname and the -p option-argument
53       shall be inserted before the final component of the pathname. For exam‐
54       ple:
55
56
57              sccs -d /x -p y get a/b
58
59       converts to:
60
61
62              get /x/a/y/s.b
63
64       This allows the creation of aliases such as:
65
66
67              alias syssccs="sccs -d /usr/src"
68
69       which is used as:
70
71
72              syssccs get cmd/who.c
73
74       -r     Invoke  command  with  the  real user ID of the process, not any
75              effective user ID that the sccs utility is set to.  Certain com‐
76              mands  ( admin, check, clean, diffs, info, rmdel, and tell) can‐
77              not be run set-user-ID by all users, since this would allow any‐
78              one  to change the authorizations. These commands are always run
79              as the real user.
80
81

OPERANDS

83       The following operands shall be supported:
84
85       command
86              An SCCS utility name or the name of one of the  pseudo-utilities
87              listed in the EXTENDED DESCRIPTION section.
88
89       options
90              An option or option-argument to be passed to command.
91
92       operands
93              An operand to be passed to command.
94
95

STDIN

97       See the utility description for the specified command.
98

INPUT FILES

100       See the utility description for the specified command.
101

ENVIRONMENT VARIABLES

103       The following environment variables shall affect the execution of sccs:
104
105       LANG   Provide  a  default value for the internationalization variables
106              that are unset or null. (See  the  Base  Definitions  volume  of
107              IEEE Std 1003.1-2001,  Section  8.2,  Internationalization Vari‐
108              ables for the precedence of internationalization variables  used
109              to determine the values of locale categories.)
110
111       LC_ALL If  set  to a non-empty string value, override the values of all
112              the other internationalization variables.
113
114       LC_CTYPE
115              Determine the locale for  the  interpretation  of  sequences  of
116              bytes  of  text  data as characters (for example, single-byte as
117              opposed to multi-byte characters in arguments and input files).
118
119       LC_MESSAGES
120              Determine the locale that should be used to  affect  the  format
121              and contents of diagnostic messages written to standard error.
122
123       NLSPATH
124              Determine the location of message catalogs for the processing of
125              LC_MESSAGES .
126
127       PROJECTDIR
128
129              Provide a default value for the -d path option. If the value  of
130              PROJECTDIR  begins with a slash, it shall be considered an abso‐
131              lute pathname; otherwise, the value of PROJECTDIR is treated  as
132              a  user  name and that user's initial working directory shall be
133              examined for a subdirectory src or source. If such  a  directory
134              is  found, it shall be used.  Otherwise, the value shall be used
135              as a relative pathname.
136
137
138       Additional environment variable effects may be  found  in  the  utility
139       description for the specified command.
140

ASYNCHRONOUS EVENTS

142       Default.
143

STDOUT

145       See the utility description for the specified command.
146

STDERR

148       See the utility description for the specified command.
149

OUTPUT FILES

151       See the utility description for the specified command.
152

EXTENDED DESCRIPTION

154       The  following pseudo-utilities shall be supported as command operands.
155       All options referred to in the following list are values given  in  the
156       options operands following command.
157
158       check  Equivalent  to  info,  except  that  nothing shall be printed if
159              nothing is being edited, and a non-zero  exit  status  shall  be
160              returned if anything is being edited. The intent is to have this
161              included in an "install" entry in  a  makefile  to  ensure  that
162              everything  is  included  into the SCCS file before a version is
163              installed.
164
165       clean  Remove everything from the current directory that can be  recre‐
166              ated  from SCCS files, but do not remove any files being edited.
167              If the -b option is given, branches  shall  be  ignored  in  the
168              determination  of whether they are being edited; this is danger‐
169              ous if branches are kept in the same directory.
170
171       create Create an SCCS file, taking the initial contents from  the  file
172              of the same name. Any options to admin are accepted. If the cre‐
173              ation is successful, the original files shall be renamed by pre‐
174              fixing the basenames with a comma. These renamed files should be
175              removed after it has been verified that the SCCS files have been
176              created successfully.
177
178       delget Perform  a  delta  on the named files and then get new versions.
179              The new versions shall have ID keywords expanded and  shall  not
180              be editable.  Any -m, -p, -r, -s, and -y options shall be passed
181              to delta, and any -b, -c, -e, -i, -k, -l,  -s,  and  -x  options
182              shall be passed to get.
183
184       deledit
185              Equivalent  to  delget,  except that the get phase shall include
186              the -e option. This option is useful for making a checkpoint  of
187              the  current  editing phase. The same options shall be passed to
188              delta as described above, and all the  options  listed  for  get
189              above except -e shall be passed to edit.
190
191       diffs  Write  a  difference  listing between the current version of the
192              files checked out for editing and the versions in  SCCS  format.
193              Any  -r,  -c, -i, -x, and -t options shall be passed to get; any
194              -l, -s, -e, -f, -h, and -b options shall be passed to diff. A -C
195              option shall be passed to diff as -c.
196
197       edit   Equivalent to get -e.
198
199       fix    Remove  the  named delta, but leave a copy of the delta with the
200              changes that were in it. It is useful for fixing small  compiler
201              bugs,  and  so  on. The application shall ensure that it is fol‐
202              lowed by a -r SID option. Since fix does not leave audit trails,
203              it should be used carefully.
204
205       info   Write  a  listing of all files being edited. If the -b option is
206              given, branches (that is, SIDs with  two  or  fewer  components)
207              shall  be ignored. If a -u user option is given, then only files
208              being edited by the named user shall  be  listed.  A  -U  option
209              shall be equivalent to -u< current user>.
210
211       print  Write  out verbose information about the named files, equivalent
212              to sccs prs.
213
214       tell   Write a <newline>-separated list of the files  being  edited  to
215              standard  output. Takes the -b, -u, and -U options like info and
216              check.
217
218       unedit This is the opposite of an edit or a get -e. It should  be  used
219              with caution, since any changes made since the get are lost.
220
221

EXIT STATUS

223       The following exit values shall be returned:
224
225        0     Successful completion.
226
227       >0     An error occurred.
228
229

CONSEQUENCES OF ERRORS

231       Default.
232
233       The following sections are informative.
234

APPLICATION USAGE

236       Many  of the SCCS utilities take directory names as operands as well as
237       specific filenames. The pseudo-utilities  supported  by  sccs  are  not
238       described  as having this capability, but are not prohibited from doing
239       so.
240

EXAMPLES

242        1. To get a file for editing, edit it and produce a new delta:
243
244
245           sccs get -e file.c
246           ex file.c
247           sccs delta file.c
248
249        2. To get a file from another directory:
250
251
252           sccs -p /usr/src/sccs/s. get cc.c
253
254       or:
255
256
257              sccs get /usr/src/sccs/s.cc.c
258
259        3. To make a delta of a large number of files in  the  current  direc‐
260           tory:
261
262
263           sccs delta *.c
264
265        4. To get a list of files being edited that are not on branches:
266
267
268           sccs info -b
269
270        5. To delta everything being edited by the current user:
271
272
273           sccs delta $(sccs tell -U)
274
275        6. In a makefile, to get source files from an SCCS file if it does not
276           already exist:
277
278
279           SRCS = <list of source files>
280           $(SRCS):
281               sccs get $(REL) $@
282

RATIONALE

284       SCCS and its associated utilities are part of the XSI Development Util‐
285       ities option within the XSI extension.
286
287       SCCS is an abbreviation for Source Code Control System. It is a mainte‐
288       nance and enhancement tracking tool. When a file is put under SCCS, the
289       source  code  control  system  maintains the file and, when changes are
290       made, identifies and stores them in the file with the  original  source
291       code  and/or  documentation.  As  other  changes are made, they too are
292       identified and retained in the file.
293
294       Retrieval of the original and any set of changes is possible. Any  ver‐
295       sion  of the file as it develops can be reconstructed for inspection or
296       additional modification. History data can be stored with each  version,
297       documenting  why  the  changes  were made, who made them, and when they
298       were made.
299

FUTURE DIRECTIONS

301       None.
302

SEE ALSO

304       admin , delta , get , make , prs , rmdel , sact , unget , val , what
305
307       Portions of this text are reprinted and reproduced in  electronic  form
308       from IEEE Std 1003.1, 2003 Edition, Standard for Information Technology
309       -- Portable Operating System Interface (POSIX),  The  Open  Group  Base
310       Specifications  Issue  6,  Copyright  (C) 2001-2003 by the Institute of
311       Electrical and Electronics Engineers, Inc and The Open  Group.  In  the
312       event of any discrepancy between this version and the original IEEE and
313       The Open Group Standard, the original IEEE and The Open Group  Standard
314       is  the  referee document. The original Standard can be obtained online
315       at http://www.opengroup.org/unix/online.html .
316
317
318
319IEEE/The Open Group                  2003                              SCCS(P)
Impressum