当前位置:   article > 正文

git reset 三种使用方法(--hard \soft\mixed)_git reset --hard

git reset --hard

详情参考
https://www.jianshu.com/p/c2ec5f06cf1a

一、本质

git reset的本质是:移动HEAD以及它所指向的branch

二、参数

三种不同的参数(–hard \soft\mixed):影响的是工作区缓存区清空与保留
–hard:

参数功能场景
–hard清空工作区与缓存区放弃目标版本后所有的修改
–soft保留工作区与缓存区,但是把版本之间的差异存放在缓存区合并多个commit
–mixed(或缺省)保留工作区清空缓存区,把版本之间的差异存放在工作区1、有错误的commit需要修改;2、git reset HEAD清空缓存区

三、使用样例

$ git reset --hard HEAD	#恢复当前版本,删除工作区和缓存区的修改
$ git reset --soft HEAD^	#恢复上一个版本,保留工作区,缓存区准备再次提交commit
$ git reset --mixed HEAD	#恢复当前版本,保留工作区,清空缓存区
$ git reset --hard 1094a	#切换到特定版本号,并删除工作区和缓存区的修改

#场景1:修改仅存在工作区
$ git checkout -- readme.txt # 单文件
#场景2:修改存在暂存区、工作区
$ git reset HEAD readme.txt
$ git checkout -- readme.txt
#场景3:修改存在版本库、暂存区、工作区
$ git reset --hard 1094a
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/495324
推荐阅读
相关标签
  

闽ICP备14008679号