Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
sccs(1)				 User Commands			       sccs(1)

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

SYNOPSIS
       /usr/bin/sccs [-N] [-O] [-R] [-r] [-drootprefix]	[-psubdir] subcommand
	     [option]...  [file]...

       /usr/xpg4/bin/sccs [-N] [-O] [-R] [-r] [-d rootprefix] [-p subdir]
	     subcommand	[option]...  [file]...

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

       sccs applies the	indicated subcommand to	the  history  file  associated
       with each of the	indicated files.

       The  name  of  an  SCCS	history	file is	derived	by prepending the `s.'
       prefix to the filename of a working copy. The sccs command normally ex-
       pects these `s.files' to	reside in an SCCS  subdirectory.   Thus,  when
       you  supply  sccs with a	file argument, it normally applies the subcom-
       mand to a file named s.file in the SCCS subdirectory. If	file is	a path
       name, sccs looks	for the	history	file in	the SCCS subdirectory of  that
       file's  parent directory. If file is a directory, however, sccs applies
       the subcommand to every s.file it contains. Thus, the command:

	 example% sccs get program.c

       would apply the get subcommand to  a  history  file  named  SCCS/s.pro-
       gram.c, while the command:

	 example% sccs get SCCS

       would apply it to every s.file in the SCCS subdirectory.

       Options	for  the sccs command itself must appear before	the subcommand
       argument. Options for a given subcommand	must appear after the  subcom-
       mand  argument.	These options are specific to each subcommand, and are
       described along with the	subcommands themselves	(see  Subcommands  be-
       low).

   Project oriented subcommand overview
       SCCS  historically  did	only  only  support  a set of single unrelated
       files, but the upcoming SCCSv6 supports also  complete  projects	 as  a
       whole. Some commands are	specific to this project mode of SCCS.

       init	 Initialize  the  current directory or named directory for use
		 with SCCS as project set home directory.

       root	 Print information about the project set home directory.

   Subcommand overview
       Besides the usual SCCS commands,	several	``pseudo-commands'' can	be is-
       sued.  These are:

       branch	 Create	a new branch  and  retrieve  a	version	 for  editing.
		 Equivalent  to	``get -b -e'' followed by ``delta -s -n'' fol-
		 lowed by ``get	-e -t -g''.

		 The -c, -i, -r	and -x flags are passed	to the first get;  the
		 -p and	-l flags are passed to the second get.

       cvt	 Convert  SCCS	history	 files	between	 SCCS v4  and SCCS v6.
		 Equivalent to ``sccscvt''.

       edit	 Retrieves a version for editing.  Equivalent to ``get -e''.

       editor	 Edit a	file whether or	not it is  controlled  by  SCCS.   Re-
		 trieves a version for editing before, if needed.

       delget	 Perform a delta on the	named files and	then get new versions.
		 The new versions will have id keywords	expanded, and will not
		 be  editable.	 The  -m, -o, -p, -r, -s, and -y flags will be
		 passed	to delta, and the -b, -c, -e, -i, -k, -l, -s,  and  -x
		 flags will be passed to get.

       deledit	 Equivalent  to	 delget	except that the	get phase includes the
		 -e flag.  This	option is useful for making  a	``checkpoint''
		 of your current editing phase.	 The same flags	will be	passed
		 to delta as described above, and all the flags	listed for get
		 above except -e and -k	are passed to edit.

       create	 Creates  an  SCCS  file, taking the initial contents from the
		 file of the same name.	 Any flags to admin are	accepted.   If
		 the  creation	is  successful,	 the  files are	renamed	with a
		 comma on the front.  These should be  removed	when  you  are
		 convinced that	the SCCS files have been created successfully.

       fix	 Must  be followed by a	-r flag.  This command essentially re-
		 moves the named delta,	but leaves you	with  a	 copy  of  the
		 delta	with  the  changes  that were in it.  It is useful for
		 fixing	small compiler bugs, etc.  Since it doesn't leave  au-
		 dit trails, it	should be used carefully.

       clean	 This  routine	removes	 everything from the current directory
		 that can be recreated from SCCS files.	 It  will  not	remove
		 any  files  being  edited.  If	the -b flag is given, branches
		 are ignored in	the determination of whether  they  are	 being
		 edited;  this is dangerous if you are keeping the branches in
		 the same directory.

       unedit	 This is the opposite of an edit or a get -e.	It  should  be
		 used  with  extreme caution, since any	changes	you made since
		 the get will be irretrievably lost.

       histfile	 Converts a g-filename into the	appropriate  s-filename	 coun-
		 terpart that is used for SCCS history files.

       info	 Gives a listing of all	files being edited.  If	the -b flag is
		 given,	 branches  (i.e.,  SID's with two or fewer components)
		 are ignored.  If the -u flag is given (with an	optional argu-
		 ment) then only files being edited by you (or the named user)
		 are listed.

       istext	 Checks	whether	the files are pure text	files or whether  they
		 need to be encoded.

       check	 Like  info except that	nothing	is printed if nothing is being
		 edited, and a non-zero	exit status is returned	if anything is
		 being edited.	The intent is to  have	this  included	in  an
		 ``install''  entry in a makefile to insure that everything is
		 included into the SCCS	file before a version is installed.

       tell	 Gives a newline-separated list	of the files being  edited  on
		 the standard output.  Takes the -b and	-u flags like info and
		 check.

       diffs	 Gives	a  ``diff'' listing between the	current	version	of the
		 program(s) you	have out for editing and the versions in  SCCS
		 format.   The -r, -c, -i, -x, and -t flags are	passed to get;
		 the -l, -s, -e, -f, -h	and -b flags are passed	to diff.   The
		 -C flag is passed to diff as -c.

       ldiffs	 The same as sccs diffs	but the	diff(1)	command	from the local
		 platform  is  used  instead of	the diff command included with
		 the SCCS system.

       log	 Display a changelog from SCCS history files using delta  com-
		 ments.

       print	 This  command	prints out verbose information about the named
		 files.

       rcs2sccs	 This command converts RCS files into SCCS files.

   Running Recursively
       The -R flag lets	sccs iterate the command over the directory tree below
       the directory tree below	the current working directory or the directory
       tree below the directory	type argument. Some commands are currently not
       permitted to be run in recursive	mode.

   Running Setuid
       The sccs	command	also includes the capability to	run ``setuid'' to pro-
       vide additional protection.  However, this does not  apply  to  subcom-
       mands  such  as	sccs-admin(1), since this would	allow anyone to	change
       the authorizations of the history file.	Commands that would do so  al-
       ways  run  as  the  real	 user.	The -r flag runs sccs as the real user
       rather than as whatever effective user sccs is ``set user id'' to.

OPTIONS
       The following options are supported by the sccs(1) command itself:

   /usr/bin/sccs
       -drootprefix

   /usr/xpg4/bin/sccs
       -d rootprefix
	      Defines the root portion of  the	path  name  for	 SCCS  history
	      files. The default root portion is the current directory.	 root-
	      prefix is	prepended to the entire	file argument, even if file is
	      an  absolute path	name.  -d overrides any	directory specified by
	      the PROJECTDIR environment variable (see	ENVIRONMENT  VARIABLES
	      below).

       -N     Enforce  sccs(1)	to use the new mode. This is the mode that has
	      been introduced to support projects  with	 atomic	 commits.   In
	      this mode, file name arguments are always	the names of the plain
	      files.   This is reliable	since the file names are not converted
	      by sccs(1) but passed unmodified to the SCCS  low	 level	utili-
	      ties, that are called with the -N	option to switch them into the
	      new mode.

       -O     Enforce sccs(1) to use the old mode. This	is how it has been im-
	      plemented	by Eric	Allman in 1980.	 In this mode, file name argu-
	      ments  are  usually the names of the plain files,	but the	s.file
	      names are	also accepted and as a result, there may be  problems,
	      in  case	that  a	 file  name  has been incorrectly converted by
	      sccs(1) before calling the SCCS low level	utilities.

   /usr/bin/sccs
       -psubdir

   /usr/xpg4/bin/sccs
       -p subdir
	      Defines the (sub)directory within	which a	history	 file  is  ex-
	      pected to	reside.	 SCCS is the default. (See EXAMPLES below).

       -r     Runs  sccs  with the real	user ID, rather	than set to the	effec-
	      tive user	ID.

       -R     Run sccs in recursive mode via libfind.  If no file  type	 argu-
	      ments  are  given	 to the	related	sccs subcommand, the directory
	      scan operation starts at the current directory.  If the  related
	      subcommand  is  expected	to operate only	on files that are cur-
	      rently edited, sccs only operates	on files for which an  associ-
	      ated  ``p.'' file	exists.	 For all other subcommands, sccs oper-
	      ated on all ``s.'' files except for those	that  are  in  ignored
	      sub directories.

	      This  option  is	a SCHILY extension that	does not exist in his-
	      toric sccs implementations.

       -T     Trace.  Print extra debug	messages.

       -V
       -version
       --version
	      Prints the sccs version number string and	exists.

OPERANDS
       The following operands are supported:

       file

	      a	file passed to subcommand

       option

	      an option	or option-argument passed to subcommand

       subcommand

	      one of the subcommands listed in Usage

USAGE
       The usage for sccs is described below.

   Subcommands
       Many of the following sccs subcommands invoke programs that  reside  in
       /usr/ccs/bin.   Many  of	 these subcommands accept additional arguments
       that are	documented in the reference page for the utility  program  the
       subcommand invokes.

       admin

	      Modify  the  flags or checksum of	an SCCS	history	file. Refer to
	      sccs-admin(1) for	more  information  about  the  admin  utility.
	      While  admin can be used to initialize a history file, you might
	      find that	the create subcommand is simpler to use	for this  pur-
	      pose.

       branch

	      Create  a	new branch and retrieve	a version for editing.	Except
	      for creating a new branch, this is equivalent to the  edit  sub-
	      command.

   /usr/bin/sccs

       cdc -rsid [-y[comment]]

   /usr/xpg4/bin/sccs

       cdc -r sid | -rsid [-y[comment]]

	      Annotate	(change)  the  delta commentary.  Refer	to sccs-cdc(1)
	      for more information about the cdc utility.  The fix  subcommand
	      can  be used to replace the delta, rather	than merely annotating
	      the existing commentary.

	      -r sid | -rsid

		     Specify the SCCS delta ID (SID) to	which the change nota-
		     tion is to	be added. The SID for a	given delta is a  num-
		     ber,  in  Dewey  decimal  format, composed	of two or four
		     fields: the release and  level  fields,  and  for	branch
		     deltas, the branch	and sequence fields. For instance, the
		     SID for the initial delta is normally 1.1.

	      -y[comment]

		     Specify the comment with which to annotate	the delta com-
		     mentary.  If -y is	omitted, sccs prompts for a comment. A
		     null comment results in an	empty annotation.

   /usr/bin/sccs

       check [-b] [-u[username]	]

   /usr/xpg4/bin/sccs

       check [-b] [-u [username] | -U ]

	      Check for	files currently	being edited. Like info	and tell,  but
	      returns  an exit code, rather than producing a listing of	files.
	      check returns a  non-zero	 exit  status  if  anything  is	 being
	      edited.	The  intent is to have this included in	an ``install''
	      entry in a makefile to insure that everything is	included  into
	      the SCCS file before a version is	installed.

	      -b

		     Ignore branches.

	      -u[username] | -u	[username] | -U

		     Check  only  files	being edited by	you.  When username is
		     specified,	check only files being edited  by  that	 user.
		     For /usr/xpg4/bin/sccs, the -U option is equivalent to -u
		     <current_user>.

       clean [ -b ]

	      Remove everything	in the current directory that can be retrieved
	      from  an	SCCS  history.	 Does  not remove files	that are being
	      edited.

	      -b     Do	not check branches to see if they  are	being  edited.
		     `clean  -b' is dangerous when branch versions are kept in
		     the same directory.

       comb

	      Generate scripts to combine deltas.  Refer to  sccs-comb(1)  for
	      more information about the comb utility.

       create [-o] [options]

	      Create  (initialize) history files.  create performs the follow-
	      ing steps:

	    o	   Renames the original	source file to ,program.c in the  cur-
		   rent	directory.

	    o	   Create the history file called s.program.c in the SCCS sub-
		   directory.

	    o	   Performs an `sccs get' on program.c to retrieve a read-only
		   copy	of the initial version.

	    Options are	passed to the admin program, e.g.:

	    -o	   Use	the original file time instead of the current time for
		   the time of the initial delta.

       cvt

	      Convert SCCS v4 history files (as	introduced in  February	 1977)
	      into  SCCS v6  history  files (as	introduced in August 2011) and
	      vice versa.  Refer to sccs-cvt(1)	for more information about the
	      sccscvt utility.	In order to convert a larger historic  project
	      (like  e.g. the BSD CSRG sccs history) from a different timezone
	      than the local timezone into SCCS	v6 use a command similar to:

		  TZ=PST sccs -R cvt -V6 .

	      This subcommand is a SCHILY extension that  does	not  exist  in
	      historic sccs implementations.

       deledit [-o] [-s] [-f] [-q] [-y[comment]]

	      Equivalent  to an	`sccs delta' and then an `sccs edit'.  deledit
	      checks in	a delta, and checks  the  file	back  out  again,  but
	      leaves  the  current  working copy of the	file intact.  The same
	      flags will be passed to delta as described with ``delget'',  and
	      all  the	flags listed with ``delget'' for ``get'' except	-e and
	      -k are passed to ``edit''.

	      -o

		     Use the original file time	instead	of  the	 current  time
		     for the time of the delta.

	      -s

		     Silent. Do	not report delta numbers or statistics.

	      -f

		     In	 NSE  mode,  force  to	create a delta even when no p.
		     file is present.

	      -q     Switch on NSE mode.

	      -y[comment]

		     Supply a comment for the  delta  commentary.   If	-y  is
		     omitted, delta prompts for	a comment.  A null comment re-
		     sults in an empty comment field for the delta.

	      The options -f and -q are	SCHILY extensions that do not exist in
	      historic sccs implementations.

       delget [-o] [-s]	[-f] [-q] [-y[comment]]

	      Perform  an  `sccs  delta'  and then an `sccs get' to check in a
	      delta and	retrieve read-only copies of the  resulting  new  ver-
	      sion.   See  the deledit subcommand for a	description of -s, -f,
	      -q, and -y.  sccs	performs a delta on all	the files specified in
	      the argument list, and then a get	on all the files. If an	 error
	      occurs  during the delta,	the get	is not performed.  The -m, -o,
	      -p, -r, -f, -q, -s, and -y flags will be passed  to  delta,  and
	      the  -b,	-c, -e,	-i, -k,	-l, -s,	and -x flags will be passed to
	      get.

       delta [-o] [-s] [-f] [-q] [-y[comment]]

	      Check in pending changes.	 Records the line-by-line changes  in-
	      troduced	while the file was checked out.	 The effective user ID
	      must be the same as the ID  of  the  person  who	has  the  file
	      checked  out.  Refer to sccs-delta(1) for	more information about
	      the delta	utility.  See the deledit subcommand for a description
	      of -s, -f, -q, and -y.

   /usr/bin/sccs

       diffs [-C] [-I] [-cdate-time] [-rsid] diff-options

   /usr/xpg4/bin/sccs

       diffs [-C] [-I] [-c date-time | -cdate-time ]
	      [-r sid |	-rsid] diff-options

	      Compare (in diff(1) format) the working copy of a	file  that  is
	      checked  out  for	editing, with a	version	from the SCCS history.
	      Use the most recent checked-in version  by  default.  The	 diffs
	      subcommand accepts the same options as diff.

	      Any -r, -c, -i, -x, and -t options are passed to subcommand get.
	      A	 -C option is passed to	diff as	-c.  An	-I option is passed to
	      diff as -i.

	      The diffs	subcommand calls the UNIX diff(1) command that is  de-
	      livered  with  the  SCCS	packet.	 If you	like to	call the local
	      diff(1) command that is in your PATH, use	the ldiffs subcommand.

	      -c date-time | -cdate-time

		     Use the most recent version checked in before  the	 indi-
		     cated  date and time for comparison.  date-time takes the
		     form: yy[mm[dd[hh[mm[ss]]]]].  Omitted units  default  to
		     their  maximum possible values; that is -c7502 is equiva-
		     lent to -c750228235959.

	      -r sid | -rsid

		     Use the version corresponding to the indicated delta  for
		     comparison.

	      The  SCHILY  version  of SCCS calls `get -o' to retrieve the old
	      version of the file in order to be  able	to  get	 correct  time
	      stamps when e.g. the -u flag is passed to	diff(1).

       edit

	      Retrieve	a  version  of	the file for editing.  `sccs edit' ex-
	      tracts a version of the file that	is writable by you,  and  cre-
	      ates  a  p.file in the SCCS subdirectory as lock on the history,
	      so that no one else can check that version in or out.   ID  key-
	      words  are  retrieved in unexpanded form.	 edit accepts the same
	      options as get, below.  Refer to sccs-get(1) for	more  informa-
	      tion  about  the	get  utility and for a list of ID keywords and
	      their definitions.  The edit subcommand is basically  equivalent
	      to ``get -e''.

       editor

	      Edit  a file whether or not is is	controlled by SCCS.  If	a file
	      is controlled by SCCS and	currently not checked out for editing,
	      the file is checked out for editing first	and then  edited.   If
	      the  file	is not under control of	SCCS, the editor is called di-
	      rectly.

	      The SCCS_EDITOR or EDITOR	environment variable must be  set  ap-
	      propriately in order to call a custom editor.

	      A	 way to	hide the fact that files need to checked out for edit-
	      ing first, is to set SCCS_EDITOR	and  then  alias  the  editor,
	      e.g.:

		 SCCS_EDITOR=ved
		 alias ved='sccs editor'

	      Note  that  in order to minimize the side	effects	of calling the
	      alias `ved *', sccs editor will call unget(1) or sccs unedit  on
	      all  files  that	have not been modified by the edit session and
	      that have	not been checked out for editing before.

	      This subcommand is a SCHILY extension that  does	not  exist  in
	      historic sccs implementations.

       enter

	      Similar  to create, but omits the	final `sccs get'.  This	can be
	      used if an `sccs edit' is	to be performed	immediately after  the
	      history file is initialized.

   /usr/bin/sccs

       fix -rsid [-d]

   /usr/xpg4/bin/sccs

       fix [-d]	-r sid | -rsid

	      Revise a (leaf) delta.  Remove the indicated delta from the SCCS
	      history,	but leave a working copy of the	current	version	in the
	      directory.  This is useful for incorporating trivial updates for
	      which no audit record is needed, or for revising the delta  com-
	      mentary.	 fix  must  be followed	by a -r	option,	to specify the
	      SID of the delta to remove.  The indicated  delta	 must  be  the
	      most  recent  (leaf)  delta  in its branch. Use fix with caution
	      since it does not	leave an audit trail of	differences  (although
	      the previous commentary is retained within the history file).

	      -d     Fully  discard  the delta.	 By default only the file con-
		     tent for the related SID is removed and the  delta	 table
		     entry  is	changed	 to the	new type `R'.  When in discard
		     mode, the delta table entry is also completely discarded.

   /usr/bin/sccs

       get [-ekmops] [-Gnewname] [-cdate-time] [-r[sid]	]

   /usr/xpg4/bin/sccs

       get [-ekmops] [-G newname | -Gnewname]
	      [-c date-time | -cdate-time] [-r sid | -rsid]

	      Retrieve a version from the SCCS history.	By default, this is  a
	      read-only	 working copy of the most recent version.  ID keywords
	      are in expanded form.  Refer to sccs-get(1) for more information
	      about the	get utility, which includes a list of ID keywords  and
	      their definitions.

	      -c date-time | -cdate-time

		     Retrieve  the latest version checked in prior to the date
		     and time indicated	by the date-time argument.   date-time
		     takes the form: yy[mm[dd[hh[mm[ss]]]]].

	      -e

		     Retrieve a	version	for editing. Same as sccs edit.

	      -G newname | -Gnewname

		     Use newname as the	name of	the retrieved version.

	      -k

		     Retrieve  a  writable copy	but do not check out the file.
		     ID	keywords are unexpanded.

	      -m

		     Precede each line with the	SID of the delta in  which  it
		     was added.

	      -o

		     Retrieves	the  file  under  the original time of the re-
		     quested version.

	      -p

		     Produce the retrieved version  on	the  standard  output.
		     Reports  that  would  normally  go	to the standard	output
		     (delta IDs	and statistics)	are directed to	 the  standard
		     error.

	      -r sid | -rsid

		     Retrieve  the version corresponding to the	indicated SID.
		     For /usr/bin/sccs,	if no sid is specified,	the latest sid
		     for the specified file is retrieved.

	      -s

		     Silent. Do	not report version numbers or statistics.

       help message-code | sccs-command

       help stuck

	      Supply more information about SCCS diagnostics.  help displays a
	      brief explanation	of the error when you  supply  the  code  dis-
	      played by	an SCCS	diagnostic message.  If	you supply the name of
	      an  SCCS	command, it prints a usage line.  help also recognizes
	      the keyword stuck.  Refer	to sccs-help(1)	for  more  information
	      about the	help utility.

       histfile	pathname

	      Converts	a  g-filename into the appropriate s-filename counter-
	      part that	is used	for SCCS history files.

	      While sccs(1) in former times just  added	 SCCS/s.   before  the
	      last path	name component,	there is now support for off-tree his-
	      tory  files  that	 are  located  inside a	directory .sccs	in the
	      project root directory.  The histfile subcommand knows which op-
	      erating mode is currently	in use	and  returns  the  appropriate
	      path to the history file.

	      If  the  pathname	 argument refers to a directory, the result is
	      the directory that holds the SCCS	history	files for the files in
	      that directory.

   /usr/bin/sccs

       info [-b] [-u[username] ]

   /usr/xpg4/bin/sccs

       info [-b] [-u [username]	| -U]

	      Display a	list of	files being edited, including the version num-
	      ber checked out, the version to be checked in, the name  of  the
	      user  who	 holds	the  lock,  and	the date and time the file was
	      checked out.

	      -b     Ignore branches.

	      -u[username] | -u	[username] | -U

		     List only files checked out  by  you.  When  username  is
		     specified,	 list only files checked out by	that user. For
		     /usr/xpg4/bin/sccs, the -U	option	is  equivalent	to  -u
		     <current_user>.

       init [-f] [-i] [-s] [directory]

	      Initialize  a  directory for use with SCCS in project mode.  See
	      sccs-init(1) for more information.

       istext [-D] [-s]	[-V4 | -V6]

	      Checks whether the files are pure	text  files  or	 whether  they
	      need to be encoded.

	      -D     Print  the	 current  default history file format. This is
		     the history file format assumed in	case that neither  -V4
		     nor -V6 have been specified.  No file argument is permit-
		     ted when this option has been specified.

	      -s     Be	silent.	If all file are	pure text, the exit code is 0.

	      -V4    Check  with SCCS v4 rules.	 A file	is not pure text if it
		     contains one or more null characters, if  a  line	starts
		     with \001 (^A) or if the file does	not end	with a newline
		     character.

	      -V6    Check  with SCCS v6 rules.	 A file	is not pure text if it
		     contains one or more null characters.

       This subcommand is a SCHILY extension that does not exist  in  historic
       sccs implementations.

       ldiffs

	      Compare different	file versions.

	      The  ldiffs  subcommand  calls the local UNIX diff(1) command as
	      found via	the PATH environment variable.	The ldiffs  subcommand
	      is otherwise identical to	the diffs subcommand.

	      This  subcommand	is  a  SCHILY extension	that does not exist in
	      historic sccs implementations.

       log

	      Display a	changelog from SCCS history  files  using  delta  com-
	      ments.  Refer to sccs-log(1) for more information	about the scc-
	      slog utility.

	      This  subcommand	is  a  SCHILY extension	that does not exist in
	      historic sccs implementations.

       print [-a] [-A] [-n] [-rsid] file ...

	      Print the	entire history of each named file.  Equivalent	to  an
	      `sccs prs	-e' followed by	an `sccs get -p	-m'.

	      -A     Annotates the output (see sccs-get(1)).

	      -a     Includes  all  deltas,  including those marked as removed
		     (see sccs-rmdel(1)).

	      -m     (see sccs-get(1)).

	      -rsid  Specify the SID (see sccs-get(1)).

   /usr/bin/sccs

       prs [-el] [-cdate-time] [-rsid]

   /usr/xpg4/bin/sccs

       prs [-el] [-c date-time | -cdate-time] [-r sid |	-rsid]

	      Peruse (display) the delta table,	or  other  portion  of	an  s.
	      file.   Refer  to	sccs-prs(1) for	more information about the prs
	      utility.

	      -c date-time | -cdate-time

		     Specify the latest	delta checked in before	the  indicated
		     date  and	time.  The  date-time  argument	takes the orm:
		     yy[mm[dd[hh[mm[ss]]]]].

	      -e

		     Display delta table information for  all  deltas  earlier
		     than  the one specified with -r (or all deltas if none is
		     specified).

	      -l

		     Display information for all deltas	later  than,  and  in-
		     cluding, that specified by	-c or -r.

	      -r sid | -rsid

		     Specify a given delta by SID.

       prt [-y]

	      Display  the delta table,	but omit the MR	field (see sccsfile(5)
	      for more information on this field).  Refer to  sccs-prt(1)  for
	      more information about the prt utility.

	      -y     Display the most recent delta table entry.	 The format is
		     a	single	output	line  for each file argument, which is
		     convenient	for use	in a pipeline with awk(1) or sed(1).

       rcs2sccs	[-rm] [-V6]

	      Convert RCS history files	into SCCS history files.  If a list of
	      files is specified, this list is converted.  If  no  file	 argu-
	      ments  are specified, all	RCS files in the current directory are
	      converted.  Refer	to sccs-rcs2sccs(1) for	more information about
	      the rcs2sccs utility.

	      This subcommand is a SCHILY extension that  does	not  exist  in
	      historic sccs implementations.

   /usr/bin/sccs
       rmdel -rsid

   /usr/xpg4/bin/sccs
       rmdel -r	sid

	      Remove  the  indicated  delta from the history file.  That delta
	      must be the most recent (leaf) delta in its  branch.   Refer  to
	      sccs-rmdel(1) for	more information about the rmdel utility.

       root [-v] [directory]

	      Print  information  about	 the  project set home directory.  See
	      sccs-root(1) for more information.

       sact

	      Show editing activity status of an SCCS file.   Refer  to	 sccs-
	      sact(1) for more information about the sact utility.

       sccsdiff	-rold-sid -rnew-sid diff-options

	      Compare	two  versions  corresponding  to  the  indicated  SIDs
	      (deltas) using diff.  Refer to sccs-sccsdiff(1) for more	infor-
	      mation about the sccsdiff	utility.

   /usr/bin/sccs

       tell [-b] [-u[username] ]

   /usr/xpg4/bin/sccs

       tell [-b] [-u [username]	| -U]

	      Display  the  list  of files that	are currently checked out, one
	      file per line.

	      -b

		     Ignore branches.

	      -u[username] | -u	[username] | -U

		     List only files checked out to  you.   When  username  is
		     specified,	 list only files checked out to	that user. For
		     /usr/xpg4/bin/sccs, the -U	option	is  equivalent	to  -u
		     <current_user>.

       unedit [-o]

	      "Undo" the last edit or `get -e',	and return the working copy to
	      its  previous  condition.	  unedit backs out all pending changes
	      made since the file was checked out.  It should be used with ex-
	      treme caution, since any changes you made	since the get will  be
	      irretrievably lost.

	      -o     Retrieves the file	under the original time	instead	of the
		     current time with the final get command.

       unget

	      Same  as	unedit.	  Refer	 to sccs-unget(1) for more information
	      about the	unget utility.

       val

	      Validate the history file.  Refer	to sccs-val(1) for more	infor-
	      mation about the val utility.

       what

	      Display any expanded ID keyword strings contained	 in  a	binary
	      (object)	or  text  file.	 Refer to what(1) for more information
	      about the	what utility.

EXAMPLES
       Example 1 Checking out, editing,	and checking in	a file

       To check	out a copy of program.c	for editing, edit it, and  then	 check
       it back in:

	 example% sccs edit program.c
	 1.1
	 new delta 1.2
	 14 lines

	 example% vi program.c
	 your editing session

	 example% sccs delget program.c
	 comments? clarified cryptic diagnostic
	 1.2
	 3 inserted
	 2 deleted
	 12 unchanged
	 1.2
	 15 lines

       Example 2 Defining the root portion of the command pathname

       sccs converts the command:

	 example% sccs -d/usr/src/include get stdio.h

       to:

	 /usr/ccs/bin/get   /usr/src/include/SCCS/s.stdio.h

       Example 3 Defining the resident subdirectory

       The command:

	 example% sccs -pprivate get include/stdio.h

       becomes:

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

       Example 4 Initializing a	history	file

       To  initialize  the history file	for a source file named	program.c, use
       `sccs create':

	 example% sccs create program.c
	 program.c:
	 1.1
	 14 lines

       If needed, sccs will create the SCCS directory first.  After  verifying
       the  working  copy,  you	 can remove the	backup file that starts	with a
       comma:

	 example% diff program.c ,program.c
	 example% rm ,program.c

       Example 5 Retrieving a file from	another	directory

       To retrieve a file from another directory into the current directory:

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

       or:

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

       Example 6 Checking out all files

       To check	out all	files under SCCS in the	current	directory:

	 example% sccs edit SCCS

       Example 7 Checking in all files

       To check	in all files currently checked out to you:

	 example% sccs delta `sccs tell	-u`

       Example 8 Entering multiple lines of comments

       If using	-y to enter a comment, for most	shells,	enclose	the comment in
       single or double	quotes.	In the following example, Myfile is checked in
       with a two-line comment:

	 example% sccs deledit Myfile -y"Entering a
	 multi-line comment"
	 No id keywords	(cm7)
	 1.2
	 2 inserted
	 0 deleted
	 14 unchanged
	 1.2
	 new delta 1.3

       Displaying the SCCS history of Myfile:

	 example% sccs prt Myfile

	 SCCS/s.Myfile:

	 D 1.2	 01/04/20  16:37:07  me	2 1    00002/00000/00014
	 Entering a
	 multi-line comment

	 D 1.1	 01/04/15  13:23:32  me	1 0    00014/00000/00000
	 date and time created 01/04/15	13:23:32 by me

       If -y is	not used and sccs prompts for a	comment, the newlines must  be
       escaped using the backslash character (\):

	 example% sccs deledit Myfile
	 comments? Entering a \
	 multi-line comment
	 No id keywords	(cm7)
	 1.2
	 0 inserted
	 0 deleted
	 14 unchanged
	 1.2
	 new delta 1.3

ENVIRONMENT VARIABLES
       See  environ(7) for descriptions	of the following environment variables
       that affect the execution of sccs(1): LANG, LC_ALL,  LC_CTYPE,  LC_MES-
       SAGES, and NLSPATH.

       PROJECTDIR    If	 contains  an  absolute	 path  name  (beginning	with a
		     slash), sccs searches for SCCS history files in  the  di-
		     rectory given by that variable.

		     If	PROJECTDIR does	not begin with a slash,	it is taken as
		     the  name	of a user, and sccs searches the src or	source
		     subdirectory of that user's home  directory  for  history
		     files.  If	such a directory is found, it is used.	Other-
		     wise, the value is	used as	a relative path	name.

       SCCS_EDITOR   The editor	to call	with the sccs editor command.

       EDITOR	     The  editor  to call with the sccs	editor command in case
		     SCCS_EDITOR is not	set.  If neither SCCS_EDITOR nor  EDI-
		     TOR is set, vi(1) is called as editor.

       SCCS_NO_HELP  If	 set, sccs(1) will not automatically call help(1) with
		     the SCCS error code in order to print a more helpful  er-
		     ror  message. Scripts that	depend on the exact error mes-
		     sages of SCCS commands should set the  environment	 vari-
		     able SCCS_NO_HELP and set LC_ALL=C.

       TZ	     Used  for	the  timezone when reading or writing the SCCS
		     history file  or  when  converting	 between  SCCS v4  and
		     SCCS v6.

EXIT STATUS
       The following exit values are returned:

       0      Successful completion.

       >0     An error occurred.

FILES
       SCCS	      SCCS subdirectory

       SCCS/d.file    temporary	 file created by the delta(1) program with the
		      content of the previous version, used to compute differ-
		      ences to the current version

       SCCS/e.file    temporary	file to	hold an	uuencoded version  of  the  g-
		      file in case of an encoded history file

       l.file	      file  containing	extracted  delta table info created by
		      the get(1) program

       SCCS/p.file    permissions (lock) file for checked-out  versions.   See
		      sccs-get(1)  for	a  description	of  the	 layout	of the
		      p.file.

       SCCS/q.file    temporary	copy of	the p.file; renamed to the p.file  af-
		      ter completion

       SCCS/s.file    SCCS history file

       SCCS/x.file    temporary	 copy of the s.file; renamed to	the s.file af-
		      ter completion

       SCCS/z.file    temporary	lock file contains the binary  process	id  in
		      host byte	order followed by the host name

       /usr/ccs/bin/* SCCS utility programs

ATTRIBUTES
       See attributes(7) for descriptions of the following attributes:

   /usr/bin/sccs
       +------------------------------+-----------------------------+
       |       ATTRIBUTE TYPE	      |	     ATTRIBUTE VALUE	    |
       +------------------------------+-----------------------------+
       | Availability		      |SCHILYdeveloper-build-sccs   |
       | Availability		      |SUNWsprot		    |
       +------------------------------+-----------------------------+

   /usr/xpg4/bin/sccs
       +------------------------------+--------------------------------+
       |       ATTRIBUTE TYPE	      |	       ATTRIBUTE VALUE	       |
       +------------------------------+--------------------------------+
       | Availability		      |SCHILYdeveloper-build-sccs-xcu4 |
       | Availability		      |SUNWxcu4t		       |
       +------------------------------+--------------------------------+
       | Interface Stability	      |Standard			       |
       +------------------------------+--------------------------------+

SEE ALSO
       sccs-add(1), sccs-admin(1), sccs-branch(1), sccs-cdc(1),	sccs-check(1),
       sccs-clean(1),	  sccs-comb(1),	    sccs-commit(1),    sccs-create(1),
       sccs-cvt(1),    sccs-deledit(1),	    sccs-delget(1),	sccs-delta(1),
       sccs-diffs(1),	  sccs-edit(1),	    sccs-editor(1),	sccs-enter(1),
       sccs-fix(1), sccs-get(1), sccs-help(1), sccs-histfile(1), sccs-info(1),
       sccs-init(1),	 sccs-istext(1),     sccs-ldiffs(1),	  sccs-log(1),
       sccs-print(1),	   sccs-prs(1),	    sccs-prt(1),     sccs-rcs2sccs(1),
       sccs-remove(1),	  sccs-rename(1),     sccs-rmdel(1),	 sccs-root(1),
       sccs-sact(1),	 sccs-sccsdiff(1),    sccs-status(1),	 sccs-tell(1),
       sccs-unedit(1), sccs-unget(1), sccs-val(1), bdiff(1), diff(1), what(1),
       sccschangeset(5), sccsfile(5), attributes(7), environ(7), standards(7).

AUTHORS
       sccs(1) was originally written by Eric Allman at	UCB in	1980.  It  was
       later  maintained by various people at AT&T and Sun Microsystems. Since
       2006, it	has been maintained by Joerg  Schilling	 and  the  schilytools
       project authors.

SOURCE DOWNLOAD
       The source code for SCCS	is included in the schilytools project and may
       be retrieved from the schilytools project at Codeberg at

       https://codeberg.org/schilytools/schilytools.

       The download directory is

       https://codeberg.org/schilytools/schilytools/releases.

SunOS 5.11			  2022/10/06			       sccs(1)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=sccs&sektion=1&manpath=FreeBSD+Ports+15.0>

home | help