git和svn都是如今使用非常广泛的版本控制系统,那么它们之间有哪些区别呢?现在我们就来盘点一下git和svn的主要区别。
1.git是分布式的,svn却不是,这也是git与其它非分布式版本控制系统最核心的区别。
2.git把内容按元数据方式存储,而svn是按文件进行存储,所有的资源控制系统都是把文件的元信息隐藏在一个类似.svn,.cvs等的文件夹里。
3.git分支和svn的分支不同,分支在svn中一点不特别,就是版本库中的另外的一个目录。
4.git没有一个全局的版本号,而svn有,目前为止这是跟svn相比git缺少的最大的一个特征。
5.git的内容完整性要优于svn,git的内容存储使用的是SHA-1哈希算法,这能确保代码内容的完整性,确保在遇到磁盘故障和网络问题时降低对版本库的破坏。