git reset

1、git reset [-q] [] [--] …​

重置暂存区指定paths的文件与本地库某一commit保持一致,不影响工作区。如果不带paths参数,那么就代表重置当前目录的所有暂存区数据。 git reset  与git add 是一对相反的操作。

git reset_第1张图片

2、git reset (--patch | -p) [] [--] […​]

重置暂存区指定paths的文件与本地库某一commit保持一致,用于交互式分块提交文件(只提交文件的部分内容)

3、git reset [] []

上面带路径的reset用于指定某个文件路径下的修改,不带路径命令将整个工程的HEAD指向特定的状态,常用的有三种mode:

(1)不带mode默认值是--mixed ,代表修改暂存区和本地库到指定的状态,不改变工作区

git reset HEAD^(等价于git reset --mixed HEAD^) 。最近的三次提交可以这样表示 HEAD, HEAD^, and HEAD~2,以此类推最近的n次提交。 

git reset_第2张图片

(2)--hard代表同时修改工作区、暂存区,本地库到某一状态;

(3)--soft代表只修改本地库HEAD位置,不修改工作区和暂存区。

git reset_第3张图片

 

 

你可能感兴趣的:(git)