DEV Community

Bawantha Thilan
Bawantha Thilan

Posted on

Why Version Control System (VCS)

Why Version Control System (VCS)

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

Scenario:

  • 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)

Scenario:

  • 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

Top comments (0)