Version control is a method for centrally storing files and keeping a record of changes made by developers. It allows tracking who made what changes and when. This allows developers to back up their work, track different versions of files, merge changes from multiple developers, and recover old versions if needed. Centralized version control systems like Subversion store all files in a central repository that developers check files out from and check changes back into. Subversion allows viewing changes between versions, rolling back changes, and recovering old project versions with a single version number across all files.