完整学习git二 git 暂存区

1 git log 命令查看提交日志信息

  git log --pretty-fuller #详细查看

  git log --stat #查看每次提交的文件变更

  git log --pretty-online

2git diff 对比文件的修改信息

  git diff HEAD  git add . 后与当前版本库的头指针比较

  git diff --cached 或--staged 提交暂存区和版本库中的文件差异

  git 命令是如何影响工作区和暂存区的

    左侧为工作区 右侧为版本库 。 版本库中标记为index的为暂存区, 标记为master的是master分支代表的目录树

    HEAD是指向master分支的一个游标 图中出现的HEAD可以用master替换

    图中objects为git的对象库实际位于 .git/objects目录下

    对工作区修改(或新增)的文件执行git add 命令时,暂存区的目录树被更新 同时工作区修改(或新增)的文件内容会被写到对象库中的一个新的对象中 而该对象的id被记录在暂存区的索引文件中

    当执行提交commit操作时 暂存区的目录树会写道当前版本库(对象库)中 master分支会做出相应的更新, 即master最新指向的目录树就是提交时原暂存区的目录树 

    当执行git reset HEAD时,暂存区的目录树会被重写,会被maste指向的目录树所替换,但工作区不变

    当执行git rm --cached (filename)时会直接从暂存区删除文件但工作区不变

    当执行git checkout . 或 git checkout -- (file) 命令时会用暂存区的全部文件或指定文件去替换掉工作区的全部或指定文件。 这个操作会清除工作区中尚未添加到暂存区中的改动

    当执行git checkout HEAD . 或git checkout HEAD (file) 命令时 会用HEAD指向的master分支中的全部或指定文件替换暂存区和工作区中的文件。同时清除工作区和暂存取中尚未提交的改动

    

时间: 2024-10-12 15:50:08

完整学习git二 git 暂存区的相关文章

2017-03-10<Git工作区及暂存区>

Git工作区和暂存区 Git和其他版本控制系统如SVN的一个不同之处就是有暂存区的概念. 先来看名词解释. 工作区(Working Directory) 就是你在电脑里能看到的目录,比如我的gitlianxi文件夹就是一个工作区: 版本库(Repository) 工作区有一个隐藏目录.git,这个不算工作区,而是Git的版本库. HEAD为.git的指针 把文件往Git版本库里添加的时候,是分两步执行的: 第一步是用git add把文件添加进去,实际上就是把文件修改添加到暂存区: 第二步是用gi

git(工作区,暂存区,管理修改,撤销修改,删除文件)

工作区和暂存区 984次阅读 Git和其他版本控制系统如SVN的一个不同之处就是有暂存区的概念. 先来看名词解释. 工作区(Working Directory) 就是你在电脑里能看到的目录,比如我的learngit文件夹就是一个工作区: 版本库(Repository) 工作区有一个隐藏目录.git,这个不算工作区,而是Git的版本库. Git的版本库里存了很多东西,其中最重要的就是称为stage(或者叫index)的暂存区,还有Git为我们自动创建的第一个分支master,以及指向master的

Git 工作区、暂存区和版本库

基本概念 我们等来理解下Git工作区.暂存区和版本库概念 工作区:就是你在电脑里能看到的目录 强烈推荐git新手阅读 暂存区:英文叫stage,或index.一般存放在igt 目录下的index文件(.git/index)中,所以我们把暂存区时也叫作索引(index). 版本库:工作区有一个隐藏目录.git 这个不算工作区,而是Git的版本库. 下面这个图展示了工作区.版本库中的暂存区和版本之间的关系: 图中左侧为工作区,右侧为版本库.在版本库中标记为"index"的区域就是暂存区(s

Git-Runoob:Git 工作区、暂存区和版本库

ylbtech-Git-Runoob:Git 工作区.暂存区和版本库 1.返回顶部 1. Git 工作区.暂存区和版本库 基本概念 我们先来理解下Git 工作区.暂存区和版本库概念 工作区:就是你在电脑里能看到的目录. 暂存区:英文叫stage, 或index.一般存放在 ".git目录下" 下的index文件(.git/index)中,所以我们把暂存区有时也叫作索引(index). 版本库:工作区有一个隐藏目录.git,这个不算工作区,而是Git的版本库. 下面这个图展示了工作区.版

Git学习02 --暂存区,撤销修改,删除文件

工作区和暂存区概念: 工作区(Working Directory)就是你在电脑里能看到的目录. 版本库(Repository) 工作区有一个隐藏目录.git,这个不算工作区,而是Git的版本库. Git的版本库里存了很多东西,其中最重要的就是称为stage(或者叫index)的暂存区,还有Git为我们自动创建的第一个分支master,以及指向master的一个指针叫HEAD. 前面讲了我们把文件往Git版本库里添加的时候,是分两步执行的: 第一步是用git add把文件添加进去,实际上就是把文件

git学习 三 工作区和暂存区

工作区和暂存区 工作区(Working Directory) 就是你在电脑里能看到的目录,比如我的learngit文件夹就是一个工作区: 版本库(Repository) 工作区有一个隐藏目录.git,这个不算工作区,而是Git的版本库. Git的版本库里存了很多东西,其中最重要的就是称为stage(或者叫index)的暂存区,还有Git为我们自动创建的第一个分支master,以及指向master的一个指针叫HEAD. 分支和HEAD的概念我们以后再讲. 前面讲了我们把文件往Git版本库里添加的时

git工作区和暂存区

工作区(Working Directory) 就是你在电脑里能看到的目录,比如我的learngit文件夹就是一个工作区: 版本库(Repository) 工作区有一个隐藏目录.git,这个不算工作区,而是Git的版本库. Git的版本库里存了很多东西,其中最重要的就是称为stage(或者叫index)的暂存区,还有Git为我们自动创建的第一个分支master,以及指向master的一个指针叫HEAD. 前面讲了我们把文件往Git版本库里添加的时候,是分两步执行的: 第一步是用git add把文件

git中的暂存区与工作区

工作区:本地暂存区:执行git add后将文件添加到暂存区(stage)版本库:执行git commit后将文件暂存区的所有文件添加到版本库git checkout --<filename>将文件在工作区的修改全部撤销有两种情况:已经经过git add添加到暂存区的,恢复到暂存区的内容未添加到暂存区,恢复到和版本库一样

GIT 工作区和暂存区

工作区和暂存区 Git和其他版本控制系统如SVN的一个不同之处就是有暂存区的概念. 先来看名词解释. 工作区(Working Directory) 就是你在电脑里能看到的目录,比如我的studygit文件夹就是一个工作区. 版本库(Repository) 工作区有一个隐藏目录.git,这个不算工作区,而是Git的版本库. Git的版本库里存了很多东西,其中最重要的就是称为stage(或者叫index)的暂存区,还有Git为我们自动创建的第一个分支master,以及指向master的一个指针叫HE

Git(工作区和暂存区概念)

Git和其他版本控制系统如SVN的一个不同之处就是有暂存区的概念. 先来看名词解释. 工作区(Working Directory) 就是你在电脑里能看到的目录,比如我的learngit文件夹就是一个工作区: 版本库(Repository) 工作区有一个隐藏目录.git,这个不算工作区,而是Git的版本库. Git的版本库里存了很多东西,其中最重要的就是称为stage(或者叫index)的暂存区,还有Git为我们自动创建的第一个分支master,以及指向master的一个指针叫HEAD. 分支和H