GIT是分布式的,SVN是集中式的
最核心的区别
SVN,CVS等是集中式开发,只有远程中央仓库服务器。
GIT不但远程中央仓库服务器,而且还有自己本地的中央仓库管理。
GIT更倾向于被使用于分布式模式,也就是每个开发人员从中心版本库/服务器上chect out代码后会在自己的机器上克隆一个自己的版本库。
因为每一个开发人员的电脑上都有一个Local Repository,所以即使没有网络也一样可以Commit,查看历史版本记录,创建项 目分支等操作,等网络再次连接上Push到Server端。
GIT按元数据方式存储,SVN是按文件方式存储
GIT把内容按元数据方式存储,而SVN是按文件
GIT对于每一次提交,通过对文件的内容或目录的结构计算出一个SHA-1 哈希值,得到一个40位的十六进制字符串,GIT将此字符串作为版本号。
SVN是连续的版本号 。