美文网首页
git数据丢失后怎么找回?

git数据丢失后怎么找回?

作者: imkobedroid | 来源:发表于2020-03-20 19:08 被阅读0次

前言

今天在使用git进行第一次提交的时候出现了问题,无意中在还没commit的时候调用了方法

git reset --hard FETCH_HEAD

瞬间文件全部丢失

找回

按照git的标准逻辑,如果我们commit后可以使用命令

git reflog

来找到我们的提交记录,例如:

图一

我们可以使用:

git reset --hard 97c4b00c

重新找回我们的版本!但是不幸的是我们并没有进行commit所以是没有记录的!我当时是添加到暂存区后使用git reset后被覆盖到!所以必须使用其他的方法

使用 git add 添加到了暂存区然后被 git reset 覆盖

我们使用命令

find ~/.git/objects -type f | xargs ls -lt | sed 10q

这里的 10q 指的就是你最近添加的 10 条 add 的记录,根据你丢失文件的多少进行选择。然后出现的信息如下:

图二

这里就是你add后的文件记录,单条记录就是一个文件

我们可以使用命令:

git cat-file -p f6fc3b8ce768b4c58ac44c7a6f45489cba95497d

会将 add 中的文件重新写到新文件中,进行恢复。
此外,还有一种方法进行恢复。执行:

git fsck --lost-found

然后去到 .git/lost-found 目录下面可以找到自己已经丢失的文件。文件不会是原来的名字,需要自己打开去查看和对比。

查看这些文件显示出来的是经过了哈希算法的乱码显示的!
这写文件我们可以按照导出来使用命令的方式重新构建成一个文件,然后放到我们相应的编译器的位置中去,这样就算数据找回了

最后

谨慎使用  git reset --hard 

相关文章

  • git数据丢失后怎么找回?

    前言 今天在使用git进行第一次提交的时候出现了问题,无意中在还没commit的时候调用了方法 瞬间文件全部丢失 ...

  • git pull --rebase 丢失数据找回

    往远端push的时候,遇到了冲突,使用git pull --rebase命令解决冲突,导致丢失了部分代码。需要找回...

  • git应用(转自其他作者)

    找回git中丢失的commit git撤销操作 闯过这 54 关,点亮你的 Git 技能树 (一) 闯过这 54 ...

  • U盘剪切文件后数据丢失怎么找回?

    从U盘转移文件到电脑都会用剪切粘贴的方式来完成,因为这样确实比较方便,但方便的同时还隐藏着一个隐患,这个隐患就是在...

  • git有用指令

    找回丢失的commint 撤销commit,但未git push的命令 查看仓库历史记录 git log不过,这里...

  • 找回丢失的数据

    为了给亲爱的小傻瓜打开新世界的大门,于是诞生了本文集,专治各种疑难杂症。 那么Shift+Delete的操作过程是...

  • git 找回丢失的commit

    今天是rebase变基时不小心把提交弄没了使用git reflog找回了。具体方法。使用git reflog列出最...

  • 回收站、U盘、移动硬盘丢失数据恢复找回方法

    回收站、U盘、移动硬盘丢失数据恢复找回方法

  • 念你安好!

    那些丢失人海的人,要怎么找回?该不该找回...... 最近,突然很想念那些丢失人海的朋友,不论是擦肩而过还是曾经挚...

  • git实践总结

    场景一:代码回退 情景二:回退代码丢失找回代码 git reset –hard HEAD^的锅 情景三:Merge...

网友评论

      本文标题:git数据丢失后怎么找回?

      本文链接:https://www.haomeiwen.com/subject/pelsyhtx.html