参考链接:集中式vs分布式
目录
区别一:SVN是集中式版本控制系统,Git是分布式版本控制系统
区别一:SVN是集中式版本控制系统,Git是分布式版本控制系统
SVN属于集中式版本控制系统,版本库是集中存档在中央服务器上的,使用的时候,先从中央服务器上取得最新的版本,修改之后,在推动给中央服务器。SVN最大的缺点是必须联网才能工作,如果网速够快还可以,但是当网速慢的时候,就很恼人了。
Git是分布式版本控制系统,在Git中没有中央服务器,可以在本地创建版本库,这样自己的电脑就是一个完整的版本库了,那么多人如何协作呢?例如,如果A电脑上修改了文件A,B电脑也修改了文件A,只需要将各自的修改推送给对方,就可以互相看到对方的修改了,但是如果B电脑没有工作怎么办呢?这个时候Git也需要一台“中央服务器”,不过这里的中央服务器不是存储版本库的,而是用作“交换机”,交换大家的修改。
区别二:Git把内容按元数据方式存储,而SVN是按文件
所有的资源控制系统都是把文件的元信息隐藏在一个类似.svn,.git等的文件夹里
区别三:Git没有一个全局的版本号
区别四:Git的内容完整性要优于SVN
Git 的内容存储使用的是 SHA-1 哈希算法。这能确保代码内容的完整性,确保在遇到磁盘故障和网络问题时降低对版本库的破坏。