美文网首页
2019-11-21 -- git 恢复文件

2019-11-21 -- git 恢复文件

作者: Zzzz_e02b | 来源:发表于2019-11-21 14:50 被阅读0次

如果在使用git时,遇到这种情况:本地的更改未提交到仓库,在此时你执行了git reset、git rebase或git stash pop等操作,可能会导致本地的更改消失!或者有意或无意将文件彻底删除,后面又想再恢复回来。心里肯定骂把自己一万遍。

但是这种情况仍有办法补救,帮助自己恢复部分或全部的代码。

情况一:文件没有add

如果你对自己的更改未做git add,这种情况可以借助一些工具,如Eclipse、phpStorm等IDE工具。这类工具通常备有Local History功能,详细记录了文件的每次变动。这种情况并没有用到git,如果你没有使用带有此功能的工具,变动的文件可能无法恢复~

新建一个文件Delete.php,并将其删除。


image.png

查看Local History,可以看到被删除的文件,选择并恢复它!


image.png
Delete.php文件恢复!
image.png

情况二:文件进行过git add,使用git fsck --lost-found命令

一:如果在进行如git reset等命令之前,对文件进行过git add操作但是没有commit:

image.png

1、此时本地的更改已经完全消失了,如果想恢复可以使用命令:git fsck --lost-found


image.png

2、可以看到有一个blob的二进制文件,使用git show进行查看:


image.png
3、果然是已经消失的Delete.php。然后进行文件备份存储:
image.png
此时文件已经恢复!
image.png

二、如果文件进行过commit:

image.png
1、这是可以看到类型从blob变为了commit: image.png

2、如果类型为tree或commit,则可以使用git merge合并到当前分支!

image.png

参考:

git官方文档
Git-内部原理-维护及数据恢复

相关文章

  • 2019-11-21 -- git 恢复文件

    如果在使用git时,遇到这种情况:本地的更改未提交到仓库,在此时你执行了git reset、git rebase或...

  • git实践总结

    一、git组成部分 二、git简单使用 1、文件恢复 git命令描述git checkout 文件名该文件回到最开...

  • 重置Github所有commit

    备份本地.git下的config文件 删除本地.git 初始化 git init 恢复config文件 添加文件g...

  • git恢复文件

    恢复已修改未add的文件git checkout 恢复(撤销)已经提交(commit并push)到远端仓库的com...

  • git checkout

    git checkout xxbranch 切换到某个分支git checkout file 恢复文件

  • 提问

    1、git被删除文件怎么恢复 1)没执行添加暂存区 git checkout -- 单个文件git checkou...

  • Mac上怎样查看.git文件、隐藏文件

    一、Mac需要查看隐藏文件.git文件 展示 恢复

  • Git常用操作整理

    如何恢复被删除的本地文件? 如何查看修改的文件? 比较文件: git diff ;比较提交:git log -p ...

  • git7~git还原文件到某个版本

    2019.05.10 git还原某个文件到某个版本 git log test.php 找到要恢复的hash git...

  • Git误删文件恢复

    不小心将提交到本地仓库的文件删除了,找到了恢复方法

网友评论

      本文标题:2019-11-21 -- git 恢复文件

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