我用git做了 git rm -r .
这是愚蠢的,因为它显然删除了我工作目录中的所有文件.其中许多文件都有未提交的更改.我过去一周很傻,也没有做任何事情.
我该怎么撤消这个?我想要恢复我工作目录中的所有更改,而不是最后一次检查git.
当我运行时git status,它显示大约200个已删除的文件.其中许多都在我希望保留的工作目录中进行了更改.我怎样才能做到这一点?
Eev*_*vee 12
你不能.Git删除了文件.他们走了.您可以使用某些文件恢复工具取消删除它们,但这远远超出了git的范围.
不经常提交sorta会破坏使用VCS的目的.
编辑:我把它拿回来!Git很棒,可能会为你的文件做一个blob(我假设是为了检查新鲜度git-status).
该线程建议git fsck --lost-found用于查找尚未成为存储库一部分的git对象.它会把一堆文件转储成.git/lost-found/other; 幸运的是,有些人将是你的工作.(这是一种更容易实现同样的方法git prune -n,如下所述和本答案中所述.)
好的是,在git它不会丢失.
尝试git reset HEAD还原索引中的更改,然后git checkout .从HEAD中检出文件
如果你还没有提交它们,另一种方法是执行git prune -n和搜索blob数字.然后,您可以使用它来恢复它们git cat-file -p <blob-hash #>,请参阅git cat-file
| 归档时间: |
|
| 查看次数: |
3435 次 |
| 最近记录: |