git reset 命令用于将 HEAD 指针或当前分支的引用重置为指定的提交,同时更改工作目录中的文件。它是撤消某些提交或更改的一种方法。
git reset 命令有三种模式:
Soft mode (–soft):不修改工作目录和索引,只重置 HEAD 指针为指定的提交。
Mixed mode (–mixed):重置 HEAD 指针为指定的提交,并取消暂存区中的更改,但不会修改工作目录中的文件。
Hard mode (–hard):重置 HEAD 指针为指定的提交,并取消暂存区和工作目录中的所有更改。
例如,要使用 mixed mode 将最近的两个提交合并为一个:
git reset --mixed HEAD~2
这将重置 HEAD 指针,撤销最近的两个提交,并取消暂存区的更改。 工作目录中的文件将保留未提交的更改。
需要注意的是,git reset 命令可以更改历史记录,可能会影响其他协作者的工作。因此,在使用该命令之前,请确保您知道该命令的影响并谨慎操作。