【问题标题】:Recover deleted files from using git rm -r使用 git rm -r 恢复已删除的文件
【发布时间】:2015-11-24 02:49:26
【问题描述】:

在不知不觉中,没有找出命令的作用,我在项目的文件夹上使用了 git rm -r 命令,认为它只会删除该文件夹内的所有文件。令我惊讶的是,我的所有文件都被删除了。

我找到了一种使用以下命令从上次提交(大约 3 天前)恢复文件的方法:

git reset
git checkout -- $(git ls-files -d)

现在我的问题是,我在过去 3 天内所做的所有工作,有什么办法可以恢复吗?即使它只是文件,所以我可以复制和粘贴。在至少添加到存储库的位置删除的所有文件,我试图找到一种方法来恢复我的项目,就像我做 git rm -r 之前的方式一样,或者我是否可以恢复单个文件,以便我可以复制和过去。感谢您的帮助

【问题讨论】:

  • 您今天学到了非常宝贵的一课。经常提交。而且我猜你永远不会忘记该命令的作用。

标签: git git-rm


【解决方案1】:

只要将文件添加到 repo(尚未提交),就有机会恢复它们。

见“Recovering added file after doing git reset --hard HEAD^

git fsck --cache --no-reflogs --lost-found --dangling HEAD
cd .git/lost-found/other

但最可靠的方法仍然是经常提交。

【讨论】:

    猜你喜欢
    • 2011-06-28
    • 2014-05-02
    • 2012-08-24
    • 1970-01-01
    • 2020-07-09
    • 2016-07-09
    • 1970-01-01
    • 2011-01-08
    • 2023-03-09
    相关资源
    最近更新 更多