Nat*_*ely 55 git commit undo delete-file undelete
我做了一件非常愚蠢的事.我使用git commit(文件编辑+新文件)(C)进行了提交.然后我修改了最后一次提交.然后我使用递归删除所有文件(!)git rm -r
然后我做了另一个git commit(C).
A-B-C ? master
有没有办法取消删除文件,但保留我在第一次提交时所做的更改?(C)我宁愿不回到(B).我试过git reset --soft head ^,那么git status列出了我删除的文件,然后我做了git checkout,但仍然没有运气.我甚至不知道是否可能.
man*_*lds 168
帮自己一个忙,不要git checkout <hash>
像其他答案那样做,并进入更多问题.
如果您已从工作目录中删除了文件但尚未提交更改,请执行以下操作:
git checkout -f
Run Code Online (Sandbox Code Playgroud)
注意:在执行此命令之前提交未提交的文件,否则您将丢失所有文件
删除的文件应该再次返回.
如果没有,如果你能找到你想要的提交(C等等 - 你的问题不清楚)git reflog
,git reset --hard <hash from reflog>
那就做,你应该全部设定.
如果我理解正确你重写了提交C.那么原始提交,让我们称之为C1无法从你的提交图中访问,但它仍然存在(git保持所有提交一段时间).使用git reflog
得到提交哈希和git checkout <hash>
或其他适当的命令去老态C1.
归档时间: |
|
查看次数: |
80708 次 |
最近记录: |