我在按照制作GitHub Pages的说明操作时,忘记进入我的git子目录。结果,我使用了git clean -fdx
命令,把整个文档目录都清空了。
有没有办法撤销这个可怕的错误?
我在按照制作GitHub Pages的说明操作时,忘记进入我的git子目录。结果,我使用了git clean -fdx
命令,把整个文档目录都清空了。
有没有办法撤销这个可怕的错误?
如果你正在使用Eclipse,其中一个可能的解决方案是从Eclipse的本地历史记录中恢复。
Time Machine
,那么您可以进行恢复。我需要添加一段代码到我的仓库中,然后使用-dfx进行清理,这样我就可以恢复文件了。
我尝试使用debugfs、查找和链接inode、testdisk以及许多其他工具,但都没有找到这个可恶的写入程序意外删除的目录。
从sourceforge下载extundelete。
您可能需要安装e2fslibs-dev软件包。
运行:
$ ./configure
$ make
$ sudo ./extundelete --restore-directory <full path to FOOBAR > <the partition>
它创建了一个名为RESTORED_FOLDERS的文件夹
git clean -xdf
。这样,如果您意识到删除了不想删除的内容,您可以轻松地恢复文件。请在此处查看:http://blog.3d-logic.com/2012/11/04/safe-git-clean-with-msbuild/。通常情况下,Git 无法恢复这些文件。命令 clean
仅删除未被跟踪的文件。Git 不会保留有关未跟踪文件的任何信息。
您唯一的希望是尝试一些非 Git 相关的工具来恢复文件。
但是,在极少数情况下,可能会发生在清理之前已经存储了这些文件。即使在此期间丢弃了此存储,它仍然可能存在于存储库数据库中。Git 通常会等待一段时间才会 GC 旧版本。在这种情况下,您可以尝试恢复存储:如何在 Git 中恢复已删除的存储?
这就是我能想到的所有方法 :-/
如果您还没有推送更改(git push),您也可以从尚未更新的服务器中恢复信息。我使用FileZilla将删除的文件带回并将其复制到本地文件中。这不是最好的方法,但它有效且避免使用控制台。
幸运的是,我在使用Windows 7时犯了这个错误。 去回收站,突出显示所有已删除的文件,然后点击“还原”。 完成。
git clean
不会把文件移动到回收站。 - MEMark
git clean -fdx
命令,但并没有警告这个操作有多么危险。我想知道有多少人因为这个看起来无害的建议而不可挽回地删除了他们的文件。 - catpnosisgit clean
而引起的许多麻烦。此外,请尝试不要养成在不检查的情况下清理项目的习惯。创建一个Powershell或Bash脚本,可以调用该脚本并在运行非常具有破坏性的清理操作之前运行git clean -fdxn
,并提供确认提示。 - Josh Burgess