GIT&GITHUB 版本控制工具
【01】
1. GIT: 分布式版本控制;SVN: 集中式版本控制
2. 版本控制方式:
集中式:单点故障,最大的问题
分布式:每个本地有完整的历史存储,可以避免单点故障
3. 集中式和分布式的区别:集中式是 1 对多的关系,一个中央服务器对多台电脑,核心是中央服务器,存储着完整的版本库。
而分布式不存在中央服务器,完整的版本库存放在每个电脑中。
【03】功能
系统修改;数据备份;版本管理(版本快照);权限限制;历史记录;分支管理;
【05】
GIT 的优势
1. 大部分在本地完成,不需要联网
2. 完整性保证:
3. 优先添加数据,而不是删除修改数据,方便恢复历史数据
4. 分支操作流畅快捷
【06】 GIT 安装
1. 安装目录:非中文,且没有空格,否则可能受到干扰
enable file system caching : 可以缓存
view release notes : 查看更新文档
【07】git 结构
为啥有工作区、暂存区,为啥不只有一个?为啥还有本地库?
工作区用于平时编码,如果编码之后直接提交的本地库,就无法撤回提交了。有了暂存区之后,如果发现有问题,还是可以撤回的;
所以暂存区算是一个缓冲区域。
本地库存储着完整的版本库,这就是分布式版本控制的标志。
【08】git 和代码托管中心
1. 代码托管中心的类型:
1. 局域网环境下:Gitlab 服务器
2. 外网环境下:github; 码云
2. 代码托管中心的功能:维护远程库
【09】本地库和远程库的交互方式
1. 团队内部协作:
push: 将本地库的代码推到远程库
clone: 将远程库的代码,复制到本地库。本地没有代码,或者需要将远程库代码复制到新的位置。使用频率低,
pull: 将远程库的代码拉取的本地库;本地已经存在代码了,需要更新代码,团队协作时用的频率高。
git pull = git fetch + git merge, 先从远程仓库获取最新版本,然后与本地仓库合并
2. 跨团队协作:
方便团队外部人员参与编码:pull 最新的代码,完成编码后,通过审核后,将代码Push 到远程库。