撤消git rm -r缓存

问题描述 投票:2回答:2

我是Git的新手,我想我不小心删除了当地的文件。我使用这个命令qazxsw poop并删除了文件。但我还没有承诺。

我该如何撤消它?

git
2个回答
2
投票

git rm -r --cached .有点明确:

--cached

使用此选项仅从索引中取消暂存和删除路径。无论是否修改了工作树文件,都将保持不变。

因此,如果您丢失了文件,那是因为存储库中已经存在提交(不是您的,而是其他的)。

尝试运行git rm documentation它应该清除所有未提交的操作,因此您应该找到之前的存储库。


0
投票

索引包含路径和对象ID。 git reset删除索引条目,撤消该行为意味着将其恢复原状。

如果结账后内容没有变化,git rm --cached就是您的票。如果你git reset -- path/to/ited内容,它在存储库但路径和内容之间的关联丢失,你可以在git add中找到关于正确时间的对象,.git/objects找到正确的对象,然后git show手动恢复索引条目。

编辑:或者如果你从git update-index --add --cacheinfo 10644,objectidhere,path/to/it或任何后来的git checkout没有编辑你的工作树中的内容,那么再次只是git add

© www.soinside.com 2019 - 2024. All rights reserved.