前言
本文为git reset
详解系列的第一篇文章,既简要介绍了git reset
的作用及语法形式,也汇总了git reset
详解系列各篇文章的链接。
概述
Git官方在git-reset Manual Page中对git reset
的解释如下:
命名
git-reset - 将当前HEAD重置为指定状态
概要
git reset [-q] [<tree-ish>] [--] <pathspec>…
git reset [-q] [--pathspec-from-file=<file> [--pathspec-file-nul]] [<tree-ish>]
git reset (--patch | -p) [<tree-ish>] [--] [<pathspec>…]
git reset [--soft | --mixed [-N] | --hard | --merge | --keep] [-q] [<commit>]
描述
在前三种形式中,git reset
命令将<tree-ish>
中的条目复制到索引中。在最后一种形式中,git reset
命令将当前分支头(HEAD
)设置为 <commit>
,并且可以选择性修改索引和工作树以匹配<commit>
。在所有形式中,<tree-ish>
/ <commit>
默认为HEAD
。
上述git-reset Manual Page简单介绍了git reset
的四种语法形式及各自的作用,下面我们详细解释一下git reset
的各种语法形式和作用。