git reflog 找回丢失代码

好几个月前的代码在git上找不到了,还没有任何提交记录,差点以为只有重新修改之前的bug了,然后发现是自己重置了分支,导致之前的记录都没有了,代码也都丢失了。

这里可以看到3.28之后到6.22没有任何提交记录

在这里插入图片描述

执行代码, 可以查看所有分支的所有操作记录(包括已经被删除的 commit 记录和 reset 的操作)

$ git reflog --date=iso

单独查看某个分支

$ git reflog  <分支名>  --date=iso

在这里插入图片描述
然后不停按向下箭头↓,找到最可能的时间点,然后复制前面的commitid

如果丢失的多,可以创建新分支,然后合并。

$ git checkout 新分支名 <commitid>

就能拿到之前的被删的提交记录们,然后合并到之前的分支上
就找回了之前的git记录
在这里插入图片描述

丢失不多,还记清具体的提交记录,直接就cherry-pick过去

$ git cherry-pick <commitHash>

差点吓死了,以为自己只有跑路了,给大家分享一下的我的这次经验吧!
这个还是让我们程序员又多了一层保障,就算提交到远程仓库了,也还有后悔的机会。

Logo

瓜分20万奖金 获得内推名额 丰厚实物奖励 易参与易上手

更多推荐