Git和SVN

Posted Hello Bug.

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Git和SVN相关的知识,希望对你有一定的参考价值。

一:两者的区别

——Git是分布式版本控制系统,SVN是集中式版本控制系统

——集中式版本控制系统

早期出现的版本控制系统有:SVN、CVS等,它们是集中式版本控制系统,集中式版本控制系统有一个单一的集中管理的服务器,保存所有文件的修订版本,而协同合作的开发人员都通过客户端连接到这台服务器,取出最新的文件或者提交更新


——分布式版本控制系统

使用集中式版本控制系统如果服务器发生故障,则整个项目可能就丢失了,而分布式版本控制中每个人的电脑都是一个完整的版本库,当我们拉取时不是拉取最新的文件,而是把整个代码仓库完整地镜像下来,这样的话如果服务器出现故障,都可以用任何一个镜像出来的本地仓库恢复。并且,即便在网络环境比较差的情况下也不用担心,因为版本库就在本地电脑上

——Git比SVN复杂
因为Git有一个暂存区域的概念,导致Git的操作命令和流程更复杂
Git最核心的概念就是有三个工作区域:
工作区:电脑中的实际目录
暂存区:缓存区域,文件有增删改时每次都需要先添加到暂存区
仓库区:服务器仓库和本地仓库


——版本号
Git没有一个全局版本号,采用40 位长的哈希值作为版本号,没有先后之分。而SVN有版本号进行控制,每次操作都会产生一个高版本号

 

以上是关于Git和SVN的主要内容,如果未能解决你的问题,请参考以下文章

Git vs SVN:性能和存储

GIT与SVN的比较

如何在 svn 和/或 git 中“取消版本化”文件

GIT

git revert和git reset的区别

工作的时候会用到的版本控制器Svn与Git