一些关于git
.git文件夹下
- 不重要:
- config文件保存项目特有的配置
- info目录,不希望在.gitignore文件中管理的忽略模式的全局可执行文件
- hooks钩子脚本
- 重要:
- HEAD文件指向当前分支
- index文件保存暂存区信息
- objects目录存储所有数据
- refs目录存储指向数据(分支)的提交对象的指针
objects文件夹下
主要对象:(通过键值对进行保存,键为hash,值为对象)
- blob对象(文件内容)
- tree对象(用于包含blob对象,组织结构。版本、分支指向根tree对象)
- commit对象 (提交信息)
- tag对象
- … …
Packfiles:
将blob压缩,当前版本保存完整信息,其他版本保存差量信息。大部分情况是自动完成,可以调用git gc手动执行