Git与Svn区别
GIT不仅仅是版本控制系统,它是个内容管理系统(cms)、工作管理系统等...
一、GIT是分布式,SVN不是:
二、GIT把内容按元数据方式存储,SVN按文件
三、GIT分支和SVN的分支不同
分支只的是版本库中的另外一个目录
GIT分支:
同一个工作目录下快速的在几个分支间切换。你很容易发现未被合并的分支,你能简单而快捷的合并这些文件。
SVN分支:
想知道是否合并了一个分支,你需要手工运行像这样的命令svn propget svn:mergeinfo,来确认代码是否被合并。感谢Ben同学指出这个特征。
四、GIT没有一个全局的版本号,SVN有
SVN的版本号实际是任何一个相应时间的源代码快照
五、GIN的内容完整性要优于SVN
GIT的内容存储使用的是SHA-1哈希算法。这能确保代码内容的完整性,确保在遇到磁盘故障和网络问题时降低对版本库的破坏。