Nemo

Nemo 关注TA

路漫漫其修远兮,吾将上下而求索。

Nemo

Nemo

关注TA

路漫漫其修远兮,吾将上下而求索。

  •  普罗旺斯
  • 负责帅就完事了
  • 写了1,496,113字

该文章投稿至Nemo社区   编程综合  板块 复制链接


git rebase失败后commit记录消失找回

发布于 2017/02/09 14:57 3,487浏览 0回复 581


事情是这样的...在某次rebase失败后,没注意到错误信息,结果在下次重新commit后rebase就成功干掉了本次需要commit的内容...

搜索了下记录,发现可以通过如下两种方式找回:

nemo@Cynthia:~/git_work01/lambda$ git reflog
a07fbb0 HEAD@{0}: rebase: aborting
2178e2a HEAD@{1}: reset: moving to HEAD@{2}
8f95ccd HEAD@{2}: rebase: checkout origin/dev_s17_1
a07fbb0 HEAD@{3}: rebase: aborting

..........

这时候可以看到所有的操作记录,包括之前commit后文件消失的记录。

找到那次rebase的操作,只要新建个分支在里面找回前一行commit的代码就可以了。

git checkout -b my_recovery 0800	ada2680266b192a0ebf8d4a43ca8ca4812aadc78


当然,还有一个方法:

git reflog
# Suppose the old commit was HEAD@{5} in the ref log
git reset --hard HEAD@{5}


本文标签
 {{tag}}
点了个评