Git 使用总结 思惟导图版

git三个区

在初始化git版本库以后会生成一个隐藏的文件 .git,能够将该文件理解为git的版本(repository),而咱们本身创建的项目文件夹即工做区(working directory),在.git文件夹里面还有不少文件,其中index文件就是暂存区(stage),同事git还生成了一个分支master以及指向该分支的指针head。
例如咱们打开开发环境如idea,里面的内容即工做区的内容,在工做区里面有的代码以及配置文件等咱们须要提交到版本库里面,最终是到了分支master上面,暂存区只是一个临时保存修改文件的地方。
图片描述git

工做区

工做区(Working Directory) 是咱们直接编辑的地方。ide

暂存区(Stage/Index)

数据暂时存放的区域,可在工做区和版本库之间进行数据的友好交流。idea

  1. 暂存区只是一个简单的索引文件。
  2. 暂存区这个索引文件里面包含的是文件的目录树,像一个虚拟的工做区,在这个虚拟工做区的目录树中,记录了文件名、文件的时间戳、文件长度、文件类型以及最重要的SHA-1值,文件的内容并无存储在其中,因此说 它像一个虚拟的工做区。
  3. 索引指向的是.git/objects下的文件。
  4. 暂存区的做用:除非是绕过暂存区直接提交,不然Git想把修改提交上去,就必须将修改存入暂存区最后才能commit。每次提交的是暂存区所对应的文件快照。

版本库(commit History)

存放已经提交的数据,push的时候,就是把这个区的数据 push到远程仓库了。spa

#比较的是工做区和暂存区的差异
  git diff 
  #比较的是暂存区和版本库的差异
  git diff --cached 
  #能够查看工做区和版本库的差异
  git diff HEAD

经常使用概念和命令

图片描述
图片描述

整理于processon指针

相关文章
相关标签/搜索