null
git reset
或 git-reset
命令用于在Git软件中将更改重置为以前的版本。Git reset之所以被广泛使用,是因为它的功能使我们可以返回到我们想要的任何版本。可以用不同的方法将更改恢复到背面。”Git reset hard”是一种永久删除指定更改的方法,无法恢复。
硬复位与软复位
有两种重置方法称为 Hard Reset
和 Soft Reset
. 硬重置将删除所有工作目录和暂存文件和索引。但是软重置不会改变工作目录和索引。这意味着在软复位中,原磁头和当前磁头之间的变化将被分段。
列表提交
在硬重置之前,我们可能需要列出提交以获得更可靠的信息,因为硬重置将持续删除,并且无法恢复已删除的文件。我们可以用 git日志 命令。此外,还可以指定其他选项来更改提交列表格式。
$ git log$ git log --oneline $ git log --graph$ git log --oneline --graph
![图片[1]-如何硬重设Git?-yiteyi-C++库](https://www.yiteyi.com/wp-content/uploads/2020/07/poftut_image-43.png)
硬复位到头部
最常用的git硬重设操作之一是重设到头部。开发人员通常会在头部做一些更改,然后不喜欢并重置回头部。由于硬重置将删除所有更改,因此使用了对头部提交的硬重置。请注意,以下命令将删除所有更改,并且这些更改无法恢复。
$ git reset --hard HEAD
头前右硬复位
好吧,在某些情况下,我们可能需要硬重置到头之前的前一个提交。我们可以使用 ^
在HEAD之前指定上一个commit并使用 git reset --hard
命令如下。
$ git reset --hard HEAD^
硬重设为指定的提交数,然后返回Head
我们还可以在头之前指定提交计数,以便重置。我们将使用蒂尔达标志 ~
以及我们要从头部重置的提交数。在下面的示例中,我们将在HEAD之前硬重置8个提交。
$ git reset --hard HEAD~8
硬重置为特定提交
硬重置可以在没有头部相关提交规范的情况下完成。我们可以通过提供如下所示的提交哈希来硬重置为特定的提交。
$ git reset --hard 29c6a536042915c8ed49
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END