1、何为Git
Git简单的来说,是一种分布式的版本管理工具,其具有以下优点:
1、速度快
2、简单的设计
3、对非线性开发模式的强力支持(可以同时允许几千个分支同时进行开发和切换)
4、完全分布式(防止集中式版本管理工具所出现的单点故障问题)
Linus花了两个星期用C语言写出了一套Git的原型代码,在Linux数千开发者的努力与完善之下,形成了目前的Git这一套版本管理工具。
2、Git与SVN的区别
Git与SVN是目前大多数企业所选择的版本管理工具,两者也代表了版本管理的两个主要的设计模式和理念。SVN是集中式版本管理系统的代表,中央代码库存储着所有代码提交者的代码,而每个项目的参与者只负责代码的提交,中央代码库则保存着完整版的所有代码。但这也造成了一系列的问题:
1、中央代码库单点故障所带来的项目风险,并且一旦发生,代码则无法恢复。
2、提交代码时由于网络带宽问题所带来时间上的延迟,影响开发人员的工作效率。
3、对于中央代码库而言,其服务器压力过大,数据库容量暴增。
Git则是建立在本地库基础之上的分布式版本管理工具,最终可以使得任何代码的提交者都可以成为“中央代码库”。Git的根本思想和基本工作原理主要是在本地复制一个“代码库”,每次提交的代码均是推送到本地代码库中,节约了由于网络带宽所带来的限制,不至于出现提交5MB的代码而需等待20分钟的情况。另一方面,一旦中央代码库的服务器出现“崩溃”,那么任何“本地库”均可以还原中