Git是什么?
Git是一个开源的分布式版本控制系统(也可以叫工具或是软件)。
版本控管工具对于开发人员来说不陌生, 像VSS,CVS,SVN,Perforce等。关于代码的版本控管工具及历史, 可以参考:
代码控管工具比较
集中式与分布式
与其他的版本控管工具相比, Git 最大的特点就是分布式。
与分布式对应的是集中式, 也就是服务器-客户端的模式。这种模式的特点是有一台中央的代码控管服务器, 不同的开发机器作为客户端从服务器获取代码和进行代码提交。
而对于分布式的Git来说, 每个客户端的机器都可以作为代码控管的服务器, 可以进行代码的检出和上传。
但是, Git 也有中央服务器的概念,而且在大部分的状况下都会使用到中央服务器。
对于习惯集中式代码控管工具的开发者来说(比如Perforce), 可以这样来理解集中式:如果在每台机器的本地安装一个Perforce 服务器, 再到一台共用的服务器上架设一台Pe