一、git和svn的区别
1、定义不同
svn:Apache Subversion是Apache许可证下的开源软件版本和版本控制系统。
git:Git是由Linus Torvalds在2005年开发的开源分布式版本控制系统。它强调速度和数据完整性。
2、模型类型不同
svn:svn是集中式模型。
git:Git 是一个分布式模型。
3、存储单元不同
svn:SVN按照原始文件存储,体积较大。SVN是按文件所有的资源控制系统都是把文件的元信息隐藏在一个类似.svn,.cvs等的文件夹里。
git:Git按照元数据方式存储,体积很小,GIT把内容按元数据方式存储,如果你把.git目录的体积大小跟.svn比较,你会发现它们差距很大。因为,.git目录是处于你的机器上的一个克隆版的版本库,它拥有中心版本库上所有的东西,例如标签,分支,版本记录等。
4、是否拥有全局版本号
Git没有一个全局版本号,而SVN有——目前为止这是跟SVN相比Git缺少的最大的一个特征。
5、内容完整性不同
Git的内容的完整性要优于SVN:GIT的内容存储使用的是SHA-1哈希算法。这能确保代码内容的完整性,确保在遇到磁盘故障和网络问题时降低对版本库的破坏。
6、版本库不同
svn:SVN只能有一个指定中央版本库。当这个中央版本库有问题时,所有工作成员都一起瘫痪直到版本库维修完毕或者新的版本库设立完成
git:Git可以有无限个版本库。或者