码迷,mamicode.com
首页 > 其他好文 > 详细

git 删除分支如何恢复

时间:2018-05-14 19:57:06      阅读:224      评论:0      收藏:0      [点我收藏+]

标签:文件系统   文件   今天   fsck   strong   div   font   命令   cal   

 

强制删除了一个分支而后又想重新使用这个分支,该怎么找回该分支上的代码呢?

 

一:问题描述:

今天师父说上线几个功能,让我把开发的分支推送到远程。当打开git就傻眼了,之前开发好的分支被我删除了,就连推送到远程的分支竟然都被删除了。

 

二:恢复的操作过程:

1. git log -g :显示已经commit信息

如果commit的内容过多的话,我们可以进行过滤查找:
git log -g --author="xx@qq.com"   // 根据用户名过滤,模糊匹配
git log -g --grep "xx"  // 根据commit时候的提交信息查找,模糊匹配

 

2. 根据commit信息,找到对应的commitId

 

3. git branch new_branch  commitId,用这个commit创建一个新的分支

 

这样,该新的分支,就保留了commitId对应的修改,我们可以使用git log 命令来查看是否正确

 

补充:

在执行第二步的时候,如果不行,可以执行:git fsck --full(文件系统检测),该命令显示所有未被其他对象引用 (指向) 的所有对象,查看改命令列举出的commit中有没有自己想要的commitId

git fsck 相对reflog是有优势的。比方说你删除一个远程的分支然后关闭仓库。 用fsck 你可以搜索和恢复已删除的远程分支

 

三:编辑器的Local History

 如果是在不行,尝试在编辑器的历史记录中,找到local history,看看能不能还原回来

 git乃神奇,这次见识到了它的强大。

 

参考:

https://git-scm.com/book/zh/v1/Git-%E5%86%85%E9%83%A8%E5%8E%9F%E7%90%86-%E7%BB%B4%E6%8A%A4%E5%8F%8A%E6%95%B0%E6%8D%AE%E6%81%A2%E5%A4%8D

 

git 删除分支如何恢复

标签:文件系统   文件   今天   fsck   strong   div   font   命令   cal   

原文地址:https://www.cnblogs.com/quan-coder/p/9036608.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!