git的特点
git是世界上最先进的版本控制系统,它是分布式的,相对于集中式的版本控制系统(如:SVN)个人感觉好用很多,当然svn也有其优秀之处。初次学习git,做个简单的总结。 (暂时想到这么多,如果有错误的话欢迎指正)
首先版本控制的发展是:
本地版本控制(local) —> 集中式版本控制 (svn)—> 分布式版本控制系统(git)
git的优点有(跟svn对比):
-
分布式(最核心)
SVN只有一个中央服务器,负责管理所有文件的修订版本,客户端提取文件的最新快照,工作然后提交更新,中央服务器出问题了大家都没法在最新的内容上作修改,每个人工作的内容都不能及时合并。
git的每一个终端都可以是一个仓库,每个终端可以完整地拷贝仓库,git没有中央服务器的说法,只是有一个中央服务器可以方便大家交换数据(如github托管平台就可以充当“中央代码仓库”),这个仓库作为主要仓库。 -
数据更安全(核心)
git每个终端都可以完整地拷贝下最新的代码仓库,就算一个终端出了问题,可以用任何一个终端的镜像来恢复本地仓库。git存储了每个历史版本的完整文件,一旦丢失便于恢复,而svn只是存储了文件的差异。 -
处理速度更快
svn一旦没有网络了,或者中央服务器出现问题了,工作的进度和效率将大打折扣。
而git是,一旦从“中央仓库”完整地复制镜像后,你可以在本地作合适的操作,一旦有网,如果你愿意你可以提交到远程仓库上去,如果成功的话,大家都能看到你的修改。 -
强大的版本控制能力
git有着强大的版本回溯功能,可以便于撤销修改及修改历史版本
事实上git很像svn,但又比svn灵活安全太多了,因为它是分布式的,git的所有终端是可以互相通信的