What is Version Control?

The management of the versions of files over time goes by many names: version control, source control, revision management, configuration management to mention but a few.

It doesn’t really matter what you call it, version control is basically concerned with managing a set of files and their relationships over time.

While version control may have its origins in team-based software development, it is equally applicable to any discipline (engineering or otherwise) where the ability to track changes over time is important. Software engineers, web developers, designers, illustrators, architects, authors and journalists (to name but a few) all share a set of problems which version control systems are designed to solve:

So basically, anyone working on a project which involves the management of multiple files can benefit from version control. It doesn’t matter whether you’re a solo software developer or a designer working on a corporate web site with dozens of co-workers, version control can help you and your team manage the complexity of your project.