Why you must need a Version Control System ?

In every IT team that is developing something great, need a version control system. It is like a super power that give you full potential to work as a team without “conflict”.

Code, Create and Commit

Every dev project is revolved through the source codes which start with a single line of a code and scales through the deliveries. A Version Control System (VCS)gives you the potential to collaborate and create awesome product in parallel. You can track changes, add features meanwhile completely securing your source code. isn’t it awesome?

The main advantages of using VCS is as below -

  • It leverages you to collaborate with large and multiple teams.
  • You can add features and enhance your code in parallel.
  • The changes can be tracked easily.
  • The source code can be safe and backed up by VCS.
  • Revert, merge, clone, change and what not?

There are several types of version control system as follow :

Local VCS : It is maintaining two isolated directory in your local system. This helps you to isolate and track changes without the dependency of internet and you can serve the purpose in anyway. But very tedious, redundant and may be error prone depending on the maintainable process.

Centralised VCS : A central server for code repository is maintained and every member of the project keeps on pulling the code from CVCS to local system and push it to there after the job is done. This is clearly internet dependent and there is always a chance to have a single point of failure.

Distributed VCS : All changes are available in the server as well as in local machines. For example, Git and Mercurial.

In my later blogs I will discuss a detailed analysis for CVCS and DVCS.