关键字
- 什么是git
- git功能 / 用来做什么
- git历史 / 纵向对比
- git和svn的区别/ 优势 /横向对比
- git结构
- git和代码托管中心
- 本地库和远程库
什么是git
git是一种分布式版本控制工具
git功能
协同修改
数据备份
不仅能备份当前文件状态,还能保存文件的每一个提交过的状态
版本管理
在保存文件的时候,能够做到不重复的保存文件信息
权限控制
对团队内的成员进行权限控制
对团队外的成员惊醒代码的审核 git独有
历史纪录
查看修改人,修改内容,修改时间,日志信息
将文件恢复到某一个历史状态
分支管理
允许开发团队在工作过程中的多条生产线同时推进任务,提高效率
git历史
git 和 svn 的对比
git 为分布式版本控制工具 svn是集中式版本控制工具
git 无单点故障问题
svn 文件信息存在于服务器端,联网同服务器交互,获取数据。若服务器端出现问题,则一切化为嫣然。git 除存储在服务器上,还存储在电脑本地,故可通过本地恢复。
存储机制
svn是通过增量式保存文件的,git是通过保存快照的形式保存文件。
优势
与linux命令全面兼容
git结构
git 和代码托管中心
git 是一种分布式的系统控制工具
gitlab是局域网环境下的代码托管中心
github则是外网下存放代码的地方
本地库和远程库
团队内协作
路人甲push加入团队,clone克隆远程库里的项目代码到自己电脑的本地库,更改部分代码后,push上传到远程库,团队内其他人pull给你看,你继续修改并push。
团队外贡献
路人乙是体制外大神,预为项目贡献代码。首先fork远程库,clone到本地,push修改后的代码,发起pull request给项目大佬们看,经过审核后,和项目服务器中的远程库merge。