GIT的使用2
目录
基本原理
校验原理
git的底层是使用哈希算法中SHA-1算法来校验文件是否一样。其实哈希算法是一种加密算法,它能将不同大小,形式的文件,解析成唯一且一段固定长度的加密结果(前提是用的哈希算法是一样),而且当文件发生细微的变化时,哈希值会变化很大,因而可以用校验文件信息是一致。
管理机制
GIT是通过快照的方式来管理文件的版本,以链表的形式来存储文件的版本。就是说每次提交文件,GIT都将其打包成一个快照,并将其索引值保留下,将原来的指针指向最新的节点。如果文件没有变化,新节点并不会产出,只是指针指向原来的节点,但是留下记录。
分支管理
分支增加
只是增加一个指针,并不是复制一份文件(更加高效)
分支切换
指针的切换
版本分支
本质是指针移动
分支合并
GIT和GitHub远程连接
GitHub是一个远程链接库,可以看作为一个数据库,而且GIT是GitHub公司开发,用于用户上传和管理自己项目的版本控制工具。
基本步骤:
创建远程库
连接库
起别名
方便以后多次使用,不需要每次都要复制一遍
命令
git remote add 别名 地址 添加别名
git remote -v 查看别名
效果
推送文件
命令
git push 别名 分支名
效果
克隆文件
命令
git clone 远程库的地址
效果
抓取文件
pull= fetch + merge两个组合。
一般比较大的文件,先用fetch下载,再检查一下确保没有问题后,再用merge合并文件
命令
git pull 远程库的地址 远程库的分支
效果
版本冲突
条件
GitHub不支持不是基于最新版本修改的推送
解决方法
先用pull将文件抓取下来
后用处理分支冲突的方法处理即可