一、简单介绍
1.Svn是一个集中式版本控制系统,工作进程如图
2.Git分布式版本控制系统
工作流程如图所示
二、两者的优缺点
Git优点
1、分布式,所有参与开发的人电脑都有完整的仓库,不担心硬盘问题;
2、无网的情况下,同样可以提交本地仓库,可以查看以前所有的日志,只要推送到远程位置,直到有网为止;
3、非常强大的分支管理功能。
4、Git内容完整性优于SVN: GIT内容存储,使用SHA-1哈希算法。 这样可以确保代码内容的完整性,并在出现磁盘故障或网络问题时减少版本库的损坏。
Git缺点:
权限管理不方便。 需要安装插件gitolite,配置有点麻烦。 或者直接使用gitlab进行管理。
SVN优点
1、具有良好的权限管理功能,可以准确控制各目录的权限;
2、使用相对git有点简单。
SVN缺点
1、集中式。 中心服务器出现问题时,所有人都不能正常工作,恢复也很麻烦。 SVN不是完整的文件,因为它记录了每次更改的差异。
2、分支功能不如git强大
3、没有千兆那么快。 如果有5个分支,则复制所有5个分支的文件
4、commit必须上网。
总之。 分布式和集中式的最大区别在于开发人员可以在本地提交,每个开发人员都使用“克隆”(git clone )将完整的git仓库复制到本地计算机上。