git reset --soft/mixed/hard [版本号]命令对比

喜夏-厌秋 提交于 2020-01-29 18:04:40

三个参数:

三个参数:soft、mixed、hard
git reset –soft [版本号]
git reset –mixed [版本号]
git reset –hard [版本号]

 

三个参数的对比:

相同点:

都是用于版本的回退或者前进

不同点:

关于soft参数:

作用:仅仅在本地库移动HEAD指针

可以这么理解,原来的工作区、暂存区、本地库是同一个版本(如下图):
在这里插入图片描述
但执行 git reset --soft [某一版本号] 之后,仅仅在本地库移动HEAD指针,如下图(以版本后退为例):
在这里插入图片描述
这样一来,本地库其他两个版本不一致,好像是文件从工作区提交到暂存区之后,没有提交到本地库。

 

关于mixed参数:

作用:
1.在本地库移动HEAD指针
2.重置暂存区

同样三者原来是同一个版本,执行git reset --mixed [某一版本号] 之后,如下图所示(以版本后退为例):
在这里插入图片描述
这样一来,本地库和暂存区的指针向后移动,就好像是工作区的文件未追踪,没有提交到暂存区、本地库。

 

关于hard参数:

作用:
1.在本地库移动HEAD指针
2.重置暂存区
3.重置工作区
所以三个指针同时移动,版本正常前进后退。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!