zoukankan      html  css  js  c++  java
  • git reset HEAD 与 git reset --hard HEAD的区别

    感谢原文作者:天地逍遥
    原文链接:https://www.jianshu.com/p/aeb50b94e6c0

    git reset HEAD 是将咱暂存区和HEAD的提交保持一致

    git reset --hard HEAD 是将工作区、暂存取和HEAD保持一致

    测试 git reset HEAD

    1. 创建一个readme.md 的文件

    在这里插入图片描述

    1. 创建一个commit 执行以下命令
    git add -A
    
    git commit -m "create readme.md test file"
    

    查看提交

    git log --all --graph --oneline
    

    在这里插入图片描述

    1. 添加暂存取的文本
      在这里插入图片描述
      执行命令,保持到暂存取
    git add -A
    

    执行命令,比较暂存取和HEAD的区别

    git diff --cached
    

    在这里插入图片描述

    1. 添加工作区的的内容
      在这里插入图片描述
      执行命令,比较工作区和暂存取的不同
    git diff 
    

    在这里插入图片描述

    1. 执行命令
    git reset HEAD
    

    在这里插入图片描述
    比较工作区和暂存区的内容

    执行命令

    git diif
    

    在这里插入图片描述
    比较暂存取和HEAD的内容

    执行命令

    git diff --cached
    

    在这里插入图片描述
    发现暂区和HEAD没有区别

    说明 git reset HEAD 会把暂存区恢复成HEAD

    1. 执行命令
    git add -A
    

    添加到暂存区

    执行

    git diff --cached
    

    在这里插入图片描述
    发现暂存区添加了两行内容

    1. 工作区添加一行文字
      在这里插入图片描述
      执行
    git reset --hard HEAD
    

    在这里插入图片描述
    执行

    git diff
    
    git diff --cached
    

    发现工作区、暂存区和HEAD没有区别
    在这里插入图片描述
    说明执行 git reset --hard HEAD 命令 会将工作区和暂存区恢复成HEAD

  • 相关阅读:
    初涉线性基
    Codechef December Challenge 2018 Division 2
    【贪心】bzoj1592: [Usaco2008 Feb]Making the Grade 路面修整
    请求库之requests
    爬虫基本原理
    Flask-SQLAlchemy
    虚拟环境
    自定义验证规则以及中间件简单介绍
    Form组件归类
    分页与中间件
  • 原文地址:https://www.cnblogs.com/tfxz/p/12701688.html
Copyright © 2011-2022 走看看