2013-04-22 3478 views
10

我最近开始使用SourceTree与Bitbucket一起工作。我正在研究一个项目,然后我决定需要将它移到不同的文件夹(出于各种原因)。所以,我在回购中删除了我正在处理的文件,然后单击SourceTree中的删除按钮,但没有意识到这样做实际上会删除这些文件。为了以防万一,我剪切了这些文件,但不记得粘贴这些文件需要原始文件存在。从SourceTree或Git恢复已删除的文件

现在,我只有将文件从回购该SourceTree没有删除。这些都是在objects目录中的文件离开了,我没有infopack文件夹属于objects目录内。

有什么办法可以恢复文件吗?我看了一下this questionthis question,但我是git的新手,无法弄清楚如何实际做到这些。

请帮忙!我该如何恢复回购中的文件?

+0

你是否在删除它们之前提交这些文件?你还能在旧版本的时间线中看到它们吗? – Thilo 2013-04-22 09:49:29

+0

@Thilo正如我所说的,我从SourceTree中删除了整个回购。当我尝试重新导入它时,会出现128错误代码。不,我没有提交这些文件。 – cpdt 2013-04-22 09:51:51

+4

如果你从不提交已删除的文件,那么git无法恢复它们。你能否给我们提供'git log --graph --oneline --decorate --all -20'的结果?而'git status'的结果对于更好地理解情况也很有用。 – 2014-09-02 18:50:09

回答

4

如果该文件已提交,您可以制作git checkout HEAD -f
如果文件没有被提交,它们不会被存储为对象。