Skip to content

git checkout . 的作用

git checkout . 是一个 Git 命令,它用于撤销对工作目录中所有文件的修改,将其还原为与当前分支最新提交一致的状态。

执行 git checkout . 的效果如下:

  1. 所有已修改但未暂存的文件将会被还原到它们在最新提交时的状态,即恢复为最近一次提交后的文件内容。
  2. 所有已添加到暂存区但尚未提交的文件也会被移除,即取消暂存并还原为最近一次提交后的文件内容。
  3. 所有新创建的但尚未添加到暂存区的文件会被删除,即新创建的文件将不再存在。

需要注意的是,git checkout . 是一个危险的命令,它会无条件地将工作目录中的文件还原为最近一次提交的状态。因此,在执行该命令之前,请确保你已经保存了对文件的所有重要修改,因为它会永久性地丢弃尚未提交的更改。

如果你只想撤销某个文件的修改而不是整个工作目录,可以使用 git checkout <file> 命令,其中 <file> 是要还原的特定文件路径。这将只影响指定的文件,而不是整个工作目录。

具体的应用:

在我们才拉下来代码,忘记修改分支的时候,更改了代码,但是我们不想要这些更改

或者在我们add了一些代码,或者改错了一些代码

我们可以使用git checkout . 去还原仓库原本的状态,到上一次提交的时候,或者才clone下来的时候

然后再git checkout 对应的分支名