三个参数:
三个参数: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.重置工作区
所以三个指针同时移动,版本正常前进后退。