Git CMD - reset: Reset current HEAD to the specified state
命令格式
git reset [-q] [<tree-ish>] [--] <paths>…
git reset (--patch | -p) [<tree-ish>] [--] [<paths>…]
git reset [--soft | --mixed [-N] | --hard | --merge | --keep] [-q] [<commit>]
命令格式
-- soft
回退版本,但不会回退工作区与暂存区的修改。
-- mixed
回退版本,且只回退暂存区的修改,而不回退工作区的修改。
--hard
回退版本,且会回退工作区与暂存区的修改。
-q, --quiet
安静模式,仅报告错误。
实例
a) 撤销暂存区的所有修改至最近一次 commit。
$ git reset
b) 撤销 datetime.txt 在暂存区的修改至最近一次 commit。
$ git reset -- datetime.txt ## or $ git reset HEAD datetime.txt
c) 重置工作区与暂存区,回退至上一个版本。
$ git reset --hard HEAD^
d) 撤销工作区与暂存区的修改,回退至最近一次 commit 时的状态。
git reset --hard HEAD
e) 重置工作区与暂存区,回退至 ID 为 b78c7e5 的 commit。
$ git reset --hard b78c7e5