Git重置


git reset命令允许您将当前头重置为指定状态。您可以重置特定文件的状态以及整个分支。

重置文件或文件集

以下命令允许您有选择地选择内容块并还原或取消暂存。

git reset (--patch | -p) [tree-ish] [--] [paths]

取消暂存文件

如果您使用git add文件移动到暂存区域,但不再希望它成为提交的一部分,则可以使用git reset来取消git reset该文件:

git reset HEAD FILE-TO-UNSTAGE

您所做的更改仍将在文件中,此命令只是从暂存区域中删除该文件。

将分支重置为先前的提交

以下命令将当前分支的HEAD重置为给定的COMMIT并更新索引。它基本上会回退你的分支的状态,然后你所做的所有提交都会写出重置点之后的任何内容。如果省略MODE ,则默认为--mixed

git reset MODE COMMIT

MODE的选项是:

  • --soft :不重置索引文件或工作树,但重置HEAD以commit 。将所有文件更改为“要提交的更改”
  • --mixed :重置索引但不重置工作树,并报告尚未更新的内容
  • --hard :重置索引和工作树。自commit以来对工作树中跟踪文件的任何更改都将被丢弃
  • --merge :重置索引并更新工作树中commit和HEAD之间不同的文件,但保留索引和工作树之间不同的文件
  • --keep :重置索引条目并更新工作树中commit和HEAD之间不同的文件。如果commit和HEAD之间不同的文件具有本地更改,则重置将中止

更多Git教程

学习更多Git教程