今天因?yàn)榉种н^多,準(zhǔn)備刪除一些。不小心刪錯了一個,臥槽,而且刪除的分支的提交還在本地,但是該分支的最后一次提交記錄大約過去一周了,怎么找回呢。我首先想到了這篇文章 http://blog.csdn.net/fdipzone/article/details/50616386
但是直接用這哥們的方法對外來說幫助不大,因?yàn)槟莻€分支最后一次提交距離現(xiàn)在時間過久。很多很多個提交眼花繚亂找不到。后來我想到了萬能的命令
git reflog
這個命令可以查看最近的git變動,包括rebase,cherry-pick,commit,reset 等等都包含在內(nèi)。

Paste_Image.png
需要返回某個狀態(tài)只需要下面命令就可以了,哪怕是用了reset --hard命令
git reset --hard [commit-id]
但是依然很多,加上日期和作者,然后根據(jù)提交備注過濾可以找出來。
git reflog --author wangguodong --before 2017-04-13 | grep '分享'

Paste_Image.png
這個就是了。如果時間不確定可以把時間條件去掉。
然后
git show --stat dc948bd

Paste_Image.png
確實(shí)是我的修改。
記住這個commit _id 然后新建一個分支,然后reset回去。
git checkout -b user_share
git reset --hard dc948bd
查看如下就有了

Paste_Image.png