Git 还原本地删除的文件尚未提交



我是 Git 的新手,不小心删除了桌面和库上的所有物理本地文件。由于从错误的目录启动 git。 我还没有承诺。如何恢复文件?

当前 git 状态为:

$ git status
On branch master
Changes to be committed:
  (use "git reset HEAD <file>..." to unstage)
    modified:   .DS_Store
    new file:   .gitconfig
    new file:   Desktop/.DS_Store

现在:

$ git status
On branch master
Changes to be committed:
  (use "git reset HEAD <file>..." to unstage)
    modified:   .DS_Store
    new file:   .gitconfig
    new file:   Desktop/.DS_Store

你如何取回本地文件?

删除的文件代表超过 1.5GB。如果他们在暂存区域,我不想提交它们或将它们推送到远程。但是我需要在本地桌面上恢复文件。

如果您删除的文件未被 Git 跟踪,您将无法使用 Git 将其取回。

本文讨论跟踪文件。

将来,尽早提交是个好主意,因为即使您提交过于频繁,您也可以在将提交推送到公共存储库之前将它们组合(挤压)在一起。

编辑:根据您的评论,似乎在某些 Git 操作之后,您丢失了 Git 已经跟踪的文件(这意味着它们已添加到以前的提交中)。

看起来您执行的操作将您置于"分离的 HEAD"模式,这意味着您的 HEAD(您在 Git 树中的位置)没有被分支指向。

因此,最好只是回到您之前所在的分支。假设您在master分支上。运行以下命令:

git checkout master

然后执行git status,并确保一切看起来与您执行错误的 Git 操作之前一样。

最新更新