早期我们使用 SVN 和 CVS,它们是集中式版本控制系统(CVCS)。所有的历史记录都存放在单一的中央服务器上。一旦服务器宕机,或者你断网了,你就无法提交代码,甚至无法查看历史。这是一个单点故障的致命弱点。
而 Git 是分布式版本控制系统(DVCS)。当你克隆一个仓库时,不仅仅下载了最新版本的代码,而是把整个仓库的完整历史镜像搬到了你的本地硬盘。这意味着: