01 Git 简介
By Kevin Song
- 01-01 Git的诞生
- 01-02 集中式vs分布式
01-01 Git的诞生
世界各地大牛为开源的Linux写代码,庞大的代码需要管理
- 2002年以前:世界各地志愿者把代码通过diff方式发给Linus,Linus本人手工合并
- 不使用CVS,SVN这些免费版本控制系统原因:
- 集中式版本控制系统速度慢
- 集中式版本控制系统必须联网
- 其他商用版本控制系统需要付费,和Linux开源精神不符
- 不使用CVS,SVN这些免费版本控制系统原因:
- 2002年以后:Linux代码库太大,使用 BitMover公司免费授权的BitKeeper 进行版本控制
- 2005年:Linux大牛破解BitKeeper协议,BitKeeper公司收回免费使用权
- Linus用C自己写了一个分布式版本控制系统Git
- 2008年:GitHub网站上线,为开源项目免费提供Git存储
01-02 集中式vs分布式
集中式版本控制系统
特点: 版本库集中存放在中央服务器
工作流程:
- 从中央服务器取得最新版本
- Coding
- 向中央服务器上传修改后版本
缺点:
- 必须联网才能工作
- 如果网速慢,提交一个10M的文件要1个小时,血崩
- 安全性差,中央服务器挂了,所有人都干不了活
分布式版本控制系统
特点: 没有中央服务器
工作流程:
- 每个人电脑上都是一个完整的版本库
- Coding
- 互相推送修改后的版本
优点:
- 不需要联网就可以修改文件
- 安全性好,每个人电脑里都有完整的版本
其他收费版本控制系统
- ClearCase(IBM):安装比WINDOWS大,速度血慢
- VSS(MicroSoft):设计反人类,微软自己都不用