Difference between Centralized Version Control and Distributed Version Control

Computer EngineeringComputer NetworkMCA

Centralized Version Control

Centralized Version Control is a version control system using server/client model and server contains all the history of source code.

Distributed Version Control

Distributed Version Control is a version control where each client can have same copy of source code as server has and both server and client maintain history of source code.

Following are the important difference between Centralized Version Control and Distributed Version Control.

Sr. No.KeyCentralized Version ControlDistributed Version Control
1WorkingIn CVS, a client need to get local copy of source from server, do the changes and commit those changes to centeral source on server.In DVS, each client can have a local branch as well and have a complete history on it. Client need to push the changes to branch which will then be pushed to server repository.
2Learning CurveCVS systems are easy to learn and set up.DVS systems are difficult for beginners. Multiple commands needs to be remembered.
3BranchesWorking on branches in difficult in CVS. Developer often faces merge conflicts.Working on branches in easier in DVS. Developer faces lesser conflicts.
4Offline AccessCVS system do not provide offline access.DVD systems are workable offline as a client copies the entire repository on their local machine.
5SpeedCVS is slower as every command need to communicate with server.DVS is faster as mostly user deals with local copy without hitting server everytime.
6BackupIf CVS Server is down, developers cannot work.If DVS server is down, developer can work using their local copies.
Updated on 27-Nov-2019 07:51:49