Svn与Git的区别

平时用git比较多,突然老师让装SVN,所以就了解了一下git和svn的区别

Git是分布式,但是Svn不是

GitSvn一样有自己的集中式版本库和Server端,但Git更倾向于分布式开发,即使没有网络也一样可以Commit,查看历史版本记录,创建项目分支等操作,等网络再次连接上Push到Server端。

Git把内容按元数据方式存储,而Svn是按文件

GitSvn都是把文件的元信息隐藏在一个.git.svn文件夹里。.git目录是处于你的机器上的一个克隆版的版本库,它拥有中心版本库上所有的东西,例如标签,分支,版本记录等。所以.git文件和.svn文件相比大很多。

分支不同

Svn的分支是一个完整的目录,如果工作成员想要开啟新的分支,那将会影响整个项目,每个人都会拥有和你一样的分支。而Git可以随意创建分支,只要不合并到master分支,则并不会影响到其他人,不想要的时候可以直接删掉。

Git的内容完整性要优于Svn

Git的内容存储使用的是SHA-1哈希算法。这能确保代码内容的完整性,确保在遇到磁盘故障和网络问题时降低对版本库的破坏。

版本库

Svn只能有一个指定中央版本库。当这个中央版本库有问题时,所有工作成员都一起瘫痪直到版本库维修完毕或者新的版本库设立完成。而 Git可以有无限个版本库。

感觉比较常用到的点就这些了吧,欢迎提出您宝贵的意见。

你可能感兴趣的:(Svn与Git的区别)