我一直在分支机构工作,昨晚深夜提交了更改,包括更新的测试文件(9月10日)。
今天早上我被要求做一些小改动并压制这些提交。不幸的是,我是从另一台最后一次提交时间是9月8日的机器上做到的。所以我跑的命令是
git rebase -i head~7
将所有提交到本地分支并将它们压缩为一个提交,然后我做了一个
git push remote branch --force
AFAIK这个动作孤立于9月9日+10发生的提交。但是,我似乎无法使用git log
找到任何提交。我想要9月10日起的methods.js文件。如果我无法获得哈希,有没有办法恢复它?
答案 0 :(得分:2)
您可以使用git reflog
查找指向rebase之前指向HEAD的位置。
您还可以使用git fsck --unreachable
查找未被命名引用(即分支或标记)引用的孤立对象。