.git文件夹

git的三个区域与.git目录解析【图文经典版】

浪子不回头ぞ 提交于 2020-04-07 21:14:00
git三个区域与文件的三种状态 1、git的三个区域 1、Git 的工作目录 2、暂存区域 3、以及本地仓库 2、文件的三种状态 对于任何一个文件,在 Git 内都只有三种状态: 1、已修改(modified) --> Git 的工作目录 2、已暂存(staged) -->暂存区域 3、已提交(committed) -->本地仓库 已修改表示修改了某个文件,但还没有提交保存; 已暂存表示把已修改的文件放在下次提交时要保存的清单中。 已提交表示该文件已经被安全地保存在本地数据库中了; 由此我们看到 Git 管理项目时,文件流转的三个工作区域:Git 的工作目录,暂存区域,以及本地仓库。 .git文件夹目录结构 1 、hooks文件夹: 这个目录存放一些shell脚本,可以设置特定的git命令后触发相应的脚本; 在搭建gitweb系统或其他git托管系统会经常用到hook script。 2、info文件夹: 包含git仓库的一些信息 3 、logs文件夹: 保存所有更改的引用记录,继续打开logs文件夹,有refs文件夹和HEAD文件 请看下图中 (1)HEAD文件 主要记录每次的变更操作,所有类型的变更都会记录的哦, git reflog命令查询出的列表就是HEAD中存储的列表 (2)继续打开refs文件夹,可以看到heads文件夹、remotes文件夹和stash文件 I :