1.1 版本控制
版本控制是一种记录若干文件内容变化,以便查阅特定版本修订情况的系统。
——1.1.1 本地版本控制系统
目录----名字+备份时间
——1.1.2 集中化的版本控制系统 CVS
目的:让不同系统上的开发者协同工作。
有一个集中管理的服务器
缺点:中央服务器单点故障
——1.1.3分布式版本控制系统(Git)
1.2 Git历史
1.3 Git基础要点
——1.3.1 直接快照,并非比较差异
Git并不关心文件内容的具体差异,只关心文件数据的整体是否发生变化。
——1.3.2 近乎所有操作都可本地执行
——1.3.3 时刻保持数据完整性
Git在保存文件之前,要对文件进行checksum计算,并以此作为数据的唯一标识与索引
所以对文件或目录的修改,Git都将知晓。
(Git使用SHA-1算法计算数据的校验和,通过对文件的内容或目录的结构计算出一个SHA-1哈希值,作为指纹字符串)
——1.3.4 多数操作仅添加数据
常用的Git操作大多仅仅是把数据添加到数据库。
——1.3.5 三种状态
Git内都只有 三种状态:已提交(committed),已修改(modified)和已缓存(staged)
状态 | 代表意义 |
---|---|
已提交 | 文件已经被安全地保存在本地数据库中 |
已修改 | 文件已经被修改,但是还没有提交保存 |
已暂存 | 把已修改的文件放在下次提交时要保存的清单中 |
目录类别 | 意义 |
---|---|
git目录 | 每个项目有一个Git目录,用于保存元数据和对象数据库 |
工作目录 | 从项目中去除某个版本的所有文件和目录,用以开始后续工作 |
暂存目录 | 简单的文件(目前还没有看懂) |
Git基本工作流程
- 在工作目录中修改某些文件
- 对这些修改了的文件作快照,并保留到暂存区域
- 提交更新,将保存在暂存区域的文件快照转储到git目录中
1.4 Git安装
我已经安装了~~~
1.5 初次运行Git 前的配置
Git提供了 git config,用来配置或读取相应的工作环境变量
文件 | 含义 | 读取方式 |
---|---|---|
/etc/gitconfig | 系统中对所有用户都普遍适用的配置 | git config --system |
~/.gitconfig | 用户目录下的配置文件只适用于该用户 | git config --global |
工作目录中的.git/config | 当前项目的git目录的配置文件 | NULL |
配置文件以级别最低的配置文件为准~
——1.5.1 用户信息
配置个人的用户名称和电子邮件地址
git config --global user.name "lldebf" git config --global user.email myEmail@qq.com
——1.5.2 文本编辑器
git config --global core.editor emacs
——1.5.3 差异分析工具
——1.5.4 查看配置信息
git config --list
1.6 获取帮助
获取帮助的方法有三种
- git help <verb>
- git <verb> --help
- man git-<verb>