Take a particular set of files — for example, the files required to build and deliver an application named Gizmo. At any given moment, this set of files is in a particular state, which can be described in terms of version numbers:
So in the end, is a software configuration just “a bunch of files”? Almost, but not quite. It’s important to keep in mind that a software configuration does not contain the files themselves, but only a description or listing of the files and their versions. Think of the difference between an entire book (big) and its table of contents (small). This crucial distinction makes it possible for AccuRev to keep track of hundreds or thousands of software configurations, without needing an infinite amount of disk storage.
The change described above to file release_number.txt illustrates the distinction between files and configurations of files. The change to the contents of the file is something like this: