Programming Utilities Guide

Version Control for Binary Files

Although SCCS is typically used for source files containing ASCII text, this version of SCCS allows you to apply version control to binary files as well (files that contain NULL or control characters, or do not end with a NEWLINE. The binary files are encoded into an ASCII representation when checked in; working copies are decoded when retrieved. (See uuencode(1C) for details.)

You can use SCCS to track changes to files such as icons, raster images, and screen fonts.

You can use sccs create -b to force SCCS to treat a file as a binary file. When you use create or delta for a binary file, you get the warning message:

	Not a text file (ad31) 

You may also get the message:

	No id keywords (cm7) 

These messages can be safely ignored. Otherwise, everything proceeds as expected:

$ sccs create special.font

special.font: 
Not a text file (ad31) 
No id keywords (cm7) 
1.1 
20  
No id keywords (cm7) 
$ sccs get special.font
1.1
20 
$ file special.font SCCS/s.special.font
special.font:				vfont definition
SCCS/s.special.font:	sccs 

Note -

Use SCCS to control the updates to source files, and make to compile objects consistently


Because the encoded representation of a binary file can vary significantly between versions, history files for binary sources can grow at a much faster rate than those for ASCII sources. However, using the same version control system for all source files makes dealing with them much easier.