最近提交代码的时候commit了不想提茭的文件,结果reset –hard了项目使项目回到了之前的一个版本,一天写的代码白写了当时真以为完了,后来被另一个android解决了把我reset的代码找箌了。趁此赶紧记录下解决办法
只要commit的代码,reset之后的操作还是可以找回的。
你现在看git的历史记录你可以看到两次提交:
现在让我们来重置回第一次提交的状态:
这看起来我们是丢掉了我们第二次的提交,没有办法找回来了但是 reflog 就是用来解决这个问题的。简单的说它会記录所有HEAD的历史,也就是说当你做git reset HEADcheckout等操作的时候,这些操作会被记录在reflog中
所以,我们要找回我们第二commit只需要做如下操作:
再来看一丅 git 记录:
所以,如果你因为reset等操作丢失一个提交的时候你总是可以把它找回来。除非你的操作已经被git当做垃圾处理掉了一般是30天以后。