Abstract
Where does version control fit in the realm of computer tools and computer design? The following section takes a look at the problems version control tries to solve. There is no reason to adopt the use of a system when there is no need for it. The purpose of version control should become clear by taking a broader view of version control's place as a computer technology. Specifically, by looking at how version control is an extension of the computer file system design.
Table of Contents
The computer file system is a design that has a long history. Computer users use file systems every day forgetting the importance of this genius abstraction of computer storage. This pervasive design can seem archaic, clumsy or even outdated. However, a higher abstraction that provides an improved way for storing digital information has yet to unseat the universally accepted file system.
File systems are characterized as having components which include files and directories (known to some as folders). These file system elements also have defined properties. For instance, directories can contain files or more directories (these nested directories are commonly known as subdirectories. Files on the other hand are single atomic units that contain varying amounts of data.
This design makes available a set of operations to these file system objects. Files and directories can be created, deleted, and renamed. Files are special since they can have their contents modified, known as read and write operations.
There are extensions to this design, including linked files, device files, and the ability to execute (run) a file as program. Information is sometimes attributed to file system objects including file size, creation date, modification date, file ownership and access permissions. This basic abstraction for file storage on computer systems is a paradigm that pervades all types of computers. One can only guess this genius but archaic paradigm will last indefinitely.