我们知道CVS及SVN都是集中式的版本控制系统,而Git是分布式版本控制系统,集中式和分布式版本控制系统有什么区别呢?各有什么优缺点呢? 我们用两张图直观的分析两种版本控制系统的区别!
先说集中式版本控制系统,用一张图直观的表示集中式版本控制系统。
从上图我们可以看出很直观的看出集中式管理系统的特点,版本库是集中存放在中央服务器的,而干活的时候,用的都是自己的电脑,所以要先从中央服务器取得最新的版本,然后开始干活,干完活了,再把自己的活推送给中央服务器。
本地是没有版本库的修改记录的,所以集中式版本控制系统最大的毛病就是必须联网才能工作,如果在局域网内还好,带宽够大,速度够快,可如果在互联网上,遇到网速慢的话,可能提交一个10M的文件就需要5分钟,这还不得把人给憋死啊。
那分布式版本管理系统呢,同样用一张图表示分布式版本管理系统