美文网首页
github超入门(4 暂存区 工作区 HEAD)

github超入门(4 暂存区 工作区 HEAD)

作者: 龚达耶 | 来源:发表于2019-09-14 02:34 被阅读0次

    当我们所有的文件到了暂存区其实我们考虑是否真的需要提交commit所以今天我们来比较暂存区和HEAD

    我们先随便修改下文件然后add查看状态

    git status
    
    image.png
    git add readmeChange.md
    git status
    
    image.png

    接下来我们可以来比较暂存区和HEAD的差异

    git diff --cached
    

    看到我们在md文件里添加了一行数字

    image.png

    所以暂存区的作用解出来了当我们不想commit的时候我们可以diff超出区别并修改然后可以放心commit

    git commit -m 'update reame file'
    
    

    当我们修改了文件的时候其实是在工作区我们当然也可以比较工作区与暂存区的区别

    git diff
    
    image.png

    或者具体文件差异

    git diff -- readme.md
    

    当然我们也可以恢复暂存区跟HEAD一样

    如果我们修改了一个文件在暂存区

    显示是这样的

    image.png

    恢复到HEAD

    git reset HEAD
    

    接下来用之前学到的比较暂存区与HEAD区别

    结果显示没有

    image.png

    我们也可以恢复工作区跟暂存区一样

    我们先add到暂存区然后任意修改工作区

    此时我们比较工作区与暂存区

    git diff
    
    image.png

    我们查看status发现工作区暂存区HEAD都不一样

    image.png
    注意:我们需要改变工作区使用checkout 需要改变暂存区用reset

    所以我们恢复工作区跟暂存区一样

    git checkout readmeChange.md
    

    此时我们再比较就已经一样了

    image.png

    如果说我们想回滚版本的话我们可以用 reset --hard

    注意: 慎用 之前的commit都没有了
    git reset -- hard d12ae6d3ec41c9824c8becc5ea8
    

    比较不同分支的区别

    git diff master daye_2
    
    image.png

    相关文章

      网友评论

          本文标题:github超入门(4 暂存区 工作区 HEAD)

          本文链接:https://www.haomeiwen.com/subject/ljuryctx.html