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

FreeBSD Manual Pages

  
 
  

home | help
sccs-cvt(1)		    Schily's USER COMMANDS		   sccs-cvt(1)

NAME
       sccs-cvt, sccscvt - convert SCCS	history	files between v4/v6

SYNOPSIS
       sccscvt [ options ] s.file1 .. s.filen

DESCRIPTION
       Sccscvt converts	SCCS v4	history	files (as introduced in	February 1977)
       into  SCCS v6  history  files  (as  introduced in August	2011) and vice
       versa.

       The first line, containing the SCCS magic number	and  the  checksum  is
       converted  to  the  format  that	is appropriate.	The time format	in the
       delta table is converted	by either removing the SCCS v6	extensions  or
       by  adding  time	 zone information by assuming that all time stamps are
       from the	local time zone. When converting from SCCS v6 to SCCS v4,  the
       enhanced	time stamp data	is retained as the first delta comment line in
       a delta block.

       SID specific SCCS v6 enhancements are converted into special delta com-
       ment to prevent information loss	when converting	to SCCS	v4.

       The  SCCS v6  enhancements that are between the SCCS v4 flags indicated
       by ^Af and the SCCS comment block that is bracketed between ^At and ^AT
       are untouched as	these enhancements are not flagged  by	historic  SCCS
       versions	 and retained by historic SCCS versions	when a history file is
       modified.

       When in old mode, the option -NSCCS is not in effect and	a  file	 argu-
       ment  refers  to	 a  directory, the directory is	scanned	for file names
       that start with ``s.'' and examines all these files.

       When in new mode, the option -NSCCS is in effect, and a	file  argument
       refers  to a directory, sccs-cvt	opens the corresponding	directory with
       SCCS history files and scans it for file	names that start  with	``s.''
       and examines all	these files.

       It is recommended not to	call sccs-cvt directly but via ``sccs cvt'' as
       this  automatically  adds the -NSCCS option in new mode.	This is	needed
       in order	to get the path	name as	global meta data  into	the  converted
       SCCSv6 history file.

   Converting an old mode project into a new mode project
       It  is  recommended  to	first initialize the project to	use an in-tree
       repository by calling:

	   sccs	init -i	.

       in order	to prepare the new mode.

       By then calling:

	   SCCS_NMODE= sccs cvt	-k -ooo	.

       all SCCS	history	files from the current directory are  converted.   The
       environment  SCCS_NMODE=	 is  currently	needed in order	to enforce new
       mode in sccs(1).	 Repeat	the last command with other  directories  from
       the project.

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

OPTIONS
       -d     When  converting	from  SCCS v6 to SCCS v4, discard the extended
	      SCCS v6 meta data	instead	of converting it into special degener-
	      ated delta comments.

       -help  Prints a short summary of	the sccscvt options and	exists.

       -k

       -keep  Keep the original	history	file as	o.file.	 When this  option  is
	      missing, the original file is replaced by	the converted file.

       -o     Keep the old time	stamp for the converted	file.

       -oo    Set  the	time stamp for the converted file to the time stamp of
	      the original file	+ 1 nanosecond.	 This is sufficient for	modern
	      filesystems like ZFS to get a distinguishable newer time that is
	      still similar to the old time stamp.

       -ooo   Set the time stamp for the converted file	to the time  stamp  of
	      the original file	+ 1 microsecond.  This is sufficient for older
	      filesystems like UFS to get a distinguishable newer time that is
	      still similar to the old time stamp.

       -oooo  Set  the	time stamp for the converted file to the time stamp of
	      the original file	+ 1 second.  This is sufficient	 for  historic
	      filesystems  to  get  a distinguishable newer time that is still
	      similar to the old time stamp.

       -V4    Convert a	SCCS v6	history	file into a SCCS v4 history file.

       -V6    Convert a	SCCS v4	history	file into a SCCS v6 history file.

       -Nbulk-spec
	      Processes	a bulk of SCCS history files.  This option allows  one
	      to do an efficient mass processing of SCCS history files.

	      The  bulk-spec  parameter	 is  composed from an optional list of
	      flag parameters followed by an optional path specifier.

	      The following flag types are supported:

	      none

	      The following path specifier types are supported:

	      -N	The file name parameters to the	 sccscvt  command  are
			not  s.filename	 files	but  the names of the g-files.
			The s.filename names are  automatically	 derived  from
			the  g-file  names  by prepending s.  to the last path
			name component.	 Both, s.filename and the  g-file  are
			in the same directory.

	      -Ns.	The  file  name	 parameters to the sccscvt command are
			s.filename files.  The the g-files names are automati-
			cally derived by removing s.  from  the	 beginning  of
			last  path  name  component  of	the s.filename.	 Both,
			s.filename and the g-file are in the same directory.

	      -Ndir	The file name parameters to the	 sccscvt  command  are
			not  s.filename	 files	but  the names of the g-files.
			The s.filename names are put into directory  dir,  the
			names  are automatically derived from the g-file names
			by prepending dir/s.  to the last path name component.

	      -Ndir/s.	The file name parameters to the	 sccscvt  command  are
			s.filename  files  in  directory dir.  The the g-files
			names are automatically	 derived  by  removing	dir/s.
			from  the beginning of last path name component	of the
			s.filename.

	      A	typical	value for dir is SCCS.

	      In order to overcome the limited number of exec(2) arguments, it
	      is recommended to	use `-'	as the file name  parameter  for  scc-
	      scvt(1) and to send a list of path names to

       -Xextended-options
	      Specify extended options.	The argument extended-options may be a
	      comma separated list of extended option names.

	      The following extended options are supported, they may be	abbre-
	      viated as	long ad	the abbreviation is still unique. Options with
	      parameter	may not	be abbreviated.

	      0	     When  reading  filenames  from stdin, triggered by	a file
		     name argument `-',	the filename separator is a null  byte
		     instead  of a newline.  This allows one to	use long lists
		     with arbitrary filenames.

	      help   Print a short online help for available options.

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

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

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

       SCCS_NO_HELP
	      If  set, sccscvt(1) will not automatically call help(1) with the
	      SCCS error code in order to print	a more helpful error  message.
	      Scripts that depend on the exact error messages of SCCS commands
	      should   set  the	 environment  variable	SCCS_NO_HELP  and  set
	      LC_ALL=C.

       TZ     Used for	the  timezone  when  converting	 between  SCCS v4  and
	      SCCS v6.

EXIT STATUS
       The following exit values are returned:

       0    Successful completion.

       1    An error occurred.

       -1   A wrong option or parameter	was specified.

FILES
       s.file history file

       o.file saved original version of	the history file

       x.file temporary	 copy  of the s.file; renamed to the s.file after com-
	      pletion.

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

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

       +------------------------------+-----------------------------+
       |       ATTRIBUTE TYPE	      |	     ATTRIBUTE VALUE	    |
       +------------------------------+-----------------------------+
       | Availability		      |SCHILYdeveloper-build-sccs   |
       +------------------------------+-----------------------------+
       | Interface Stability	      |Evolving			    |
       +------------------------------+-----------------------------+

SEE ALSO
       sccs(1),	  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-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).

NOTES
       If  a  SCCS history file	is converted from SCCS v4 to SCCS v6 and there
       is no retained SCCS v6 timestamp	information in the delta  comment,  it
       may be a	good idea to manually correct time zone	information.

BUGS
       None currently known.

       Mail  bugs and suggestions to schilytools@mlists.in-berlin.de or	open a
       ticket at https://codeberg.org/schilytools/schilytools/issues.

       The mailing list	archive	may be found at:

       https://mlists.in-berlin.de/mailman/listinfo/schilytools-mlists.in-berlin.de.

AUTHOR
       sccscvt (1) was originally written by Joerg Schilling in	 2011  and  is
       now maintained by 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.

Joerg Schilling			  2022/10/06			   sccs-cvt(1)

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

home | help