It is also known as version control and source control. The goal of this tool is to record changes made to files such as source code files by applying time-stamp and version number. This provides the user with history of changes for a given file as well as backup in case of file corruption. This tool is mainly used for text files rather than binary files as it is easy to record line by line differences on a text file compared to the previous version rather than copying the entire file over again. Copying an entire file over again, would result in waste of space. Version controlling a binary file cannot give you any detailed history other than when it was changed and not what has changed.