我在上次提交后添加并删除了一些文件。我意外地删除了整个子文件夹。 git命令的顺序:
git add src/app/klicka/*
modified: src/app/klicka/_klicka.scss
new file: src/app/klicka/img/beispiel-buttons.png
new file: src/app/klicka/img/beispiel-lightbox-1.png
new file: src/app/klicka/img/beispiel-lightbox-2.png
new file: src/app/klicka/img/beispiel-lightbox-3.png
new file: src/app/klicka/img/beispiel-pascoe.png
new file: src/app/klicka/img/button-jetzt-ausprobieren.png
new file: src/app/klicka/img/referenzen-row-1.jpg
new file: src/app/klicka/img/referenzen-row-2.jpg
new file: src/app/klicka/img/referenzen-row-3.jpg
但仍有删除的文件
所以我做了:
我从这里得到的{p>git rm */klicka/* $(git ls-files --deleted)
:
Removing multiple files from a Git repo that have already been deleted from disk
但似乎你不能在子模式上使用它,所以它删除了我的整个文件夹。
之后我使用git reset
,因为我想取消所有更改。但现在文件夹仍然没有了。我没有提交是否有办法恢复rm和最后一次提交之间的状态?我还有其他提交要做。
答案 0 :(得分:0)
您可以使用git reflog命令,该命令为您提供HEAD执行命令列表。你执行命令后可以回到HEAD,一切都会回来。
$ git reflog
以下将是输出
现在回到那个HEAD,你可以运行下面的命令,假设你想要应用HEAD @ {5}。
$ git reflog HEAD@{5}
您可以在此处获取更多信息http://git-scm.com/docs/git-reflog