Git重置

git reset 命令用于:

  • 将整个工作树返回到先前提交的状态。它将丢弃提交或者清除未提交的更改。
  • 更改分支 HEAD 指向的提交。它可以调整已经存在的提交历史。
  • 用于取消暂存文件。
如何在 Git 中将文件重置或者恢复到特定版本

如果要查看在当前状态和特定提交状态之间所做的文件更改,请运行以下命令:

Git Checkout

该命令用于:

  • 将 HEAD 指针移动到特定提交或者在不同分支之间切换;
  • 将任何内容更改回滚到特定提交的更改;
  • 不对提交历史进行更改;
  • 覆盖工作目录中的文件。

因此,每当我们需要撤消 git 存储库中的更改时,我们都可以轻松运行上述命令。
使用这些命令乍一看似乎令人困惑,但我们掌握的有关它们的信息越多,工作就会越好。

Git Revert

此命令有助于:

  • 回滚已提交的更改;
  • 通过反转特定提交来生成新提交。所以,它可以添加一个全新的提交历史,但不能修改已经存在的。
  • 覆盖工作目录中包含的文件。

在 Git 中重置、恢复和检出

Git reset、git revert 和 git checkout 可以说是 Git 最有效的工具。

他们提供的最重要的选项是撤消 git 存储库中的更改。

由于上面给出的命令是相似的,所以很容易混淆。
让我们看看如何毫不费力地使用它们。

将文件恢复和重置为特定版本

如果要查看在当前状态和特定提交状态之间所做的文件更改,请运行以下命令:

git diff <sha1-commit-hash> <file-path>

要将文件重置为特定提交的状态,请运行 git reset 命令:

git reset <sha1-commit-hash> <file-path>

我们还可以有效地使用 git checkout 命令:

git checkout <sha1-commit-hash> -- <file1-path> <file2-path>

如果要重置为特定提交之前的提交,请添加 ~1(其中 1 是我们要返回的提交数,它可以是任何数字):

git checkout  <sha1-commit-hash>~1 -- <file1-path> <file2-path>
日期:2020-06-02 22:16:43 来源:oir作者:oir