Why Version Control System (VCS)

Why Version Control System (VCS)

Bawantha Rathnayaka's photo
Bawantha Rathnayaka
·Dec 26, 2019·

2 min read

Play this article

Why version control?

Scenario 1:

  • Your program is working
  • You change “just one thing”
  • Your program breaks
  • You change it back
  • Your program is still broken — why?

Has this ever happened to you?

Why version control? (part 2)

  • Your program worked well enough yesterday
  • You made a lot of improvements last night…
  • You need to turn in your program now
  • Has this ever happened to you?

Version control for teams


  • You change one part of a program — it works
  • Your co-worker changes another part — it works
  • You put them together — it doesn’t work
  • Some change in one part must have broken something in the other part
  • What were all the changes?

Teams (part 2)


  • You make a number of improvements to a class
  • Your co-worker makes a number of differentimprovements to the sameclass

How can you merge these changes?

Version control systems (VCS)

A version control system (often called a source code control system) does these things:

  • Keeps multiple (older and newer) versions of everything (not just source code)
  • Requests comments regarding every change
  • Allows “check in” and “check out” of files so you know which files someone else is working on
  • Displays differences between versions

Benefits of version control

1. For working by yourself:

  • Gives you a “time machine” for going back to earlier versions
  • Gives you great support for different versions (standalone, web app, etc.) of the same basic project

2. For working with others:

  • Greatly simplifies concurrent work, merging changes
Share this