我使用git rm -r
删除了rails应用程序中的db文件夹我试过
git reset HEAD
和
git reset --hard HEAD
但是迁移文件没有回来。我尝试提交,然后运行重置,但仍然没有。
我该怎么办?
答案 0 :(得分:18)
您可以从仍然存在的提交中签出文件。这是如何做到的。
git checkout <commit where the file still exists> -- db
# Example:
git checkout 6936142 -- db
# This also works, but if you have a branch named the same as the file or path,
# it will throw an error.
git checkout 6936142 db
答案 1 :(得分:2)
尝试git reset --hard HEAD^1
(HEAD之前的提交)。或者,您可以使用git log
获取上一个已知工作提交的哈希值,然后git reset --hard <hash>
。
答案 2 :(得分:2)
您可以查看上次提交或索引中的单个文件。
下db下的所有内容
git checkout db/*
检查索引
git checkout master db/*
从主分支的头部检查db下的所有内容
你可以用这种方式挽救你的大部分东西
了解详情:git help checkout