集中式版本控制是使用服务器/客户端模型的版本控制系统,服务器包含所有源代码的历史记录。
分布式版本控制是一个版本控制,其中每个客户端可以拥有与服务器相同的源代码副本,并且服务器和客户端都维护源代码的历史记录。
以下是集中版本控制和分布式版本控制之间的重要区别。
序号 | 键 | 集中版本控制 | 分布式版本控制 |
---|---|---|---|
1 | 加工 | 在CVS中,客户端需要从服务器获取源的本地副本,进行更改并将这些更改提交到服务器上的中心源。 | 在DVS中,每个客户端也可以有一个本地分支,并具有完整的历史记录。客户端需要将更改推送到分支,然后将其推送到服务器存储库。 |
2 | 学习曲线 | CVS系统易于学习和设置。 | DVS系统对于初学者来说很困难。需要记住多个命令。 |
3 | 分行 | 在CVS中困难的分支上工作。开发人员经常面临合并冲突。 | 在DVS中更轻松地处理分支。开发人员面临的冲突较少。 |
4 | 离线访问 | CVS系统不提供离线访问。 | DVD系统可以脱机工作,因为客户端可以在其本地计算机上复制整个存储库。 |
5 | 速度 | 由于每个命令都需要与服务器通信,因此CVS速度较慢。 | DVS速度更快,因为大多数用户都在不打服务器的情况下处理本地副本。 |
6 | 后备 | 如果CVS Server关闭,开发人员将无法工作。 | 如果DVS服务器已关闭,则开发人员可以使用其本地副本。 |