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
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.