git 的理解

1. 工作原理

2.

答:

  1. 当我们通过git init创建或者git clone一个项目的时候,项目目录会隐藏一个.git子目录,其作用是用来跟踪管理版本库的

Git 中所有数据在存储前都计算校验和,然后以校验和来引用,所以在我们修改或者删除文件的时候,git能够知道

Git用以计算校验和的机制叫做 SHA-1 散列(hash,哈希), 这是一个由 40 个十六进制字符(0-9 和 a-f)组成字符串,基于 Git 中文件的内容或目录结构计算出来

当我们修改文件的时候,git就会修改文件的状态,可以通过git status进行查询,状态情况如下:

文件状态对应的,不同状态的文件在Git中处于不同的工作区域,主要分成了四部分:

从上图可以看到,git日常简单的使用就只有上图6个命令:

补充

补充:理解 Git 的三个关键点:

  1. 三大工作区:工作区(Working Directory)即磁盘上的文件;暂存区(Stage / Index)保存即将提交的快照;版本库(Repository)保存历史 commit。流程是:git add 把工作区改动写入暂存区,git commit 把暂存区快照写入版本库。
  2. 文件状态:未跟踪(Untracked)、已修改(Modified)、已暂存(Staged)、已提交(Committed)。git status 能直观看到当前文件所处的状态。
  3. 对象模型:Git 本质是内容寻址的文件系统,所有数据(文件、目录、commit、tree、blob)都以 SHA-1 哈希(Git 2.29+ 支持 SHA-256)作为唯一标识。这意味着 Git 能精准检测到内容篡改,也意味着只要内容不变,哈希就不变,对去重和增量存储非常友好。

六个最常用命令:git init、git clone、git add、git commit、git push、git pull,覆盖了 90% 的日常使用。

来源整理自:我的有道云笔记