git reset –hard的误操作解决方法:
1.第一步:
weitf@WEITF-PC /d/workspace/sync/extract_patch (weitf)
$ git log
commit 3138d2b536ca2857ad0085110907d203f5cbfc0c
Author: weitf weicaihui2008@163.com
Date: Sun Sep 13 20:38:47 2015 +0800
modified bug
commit 7032a536a4e29fa402fc88ff57101dbe2068137f
Author: weitf weicaihui2008@163.com
Date: Sun Sep 13 20:27:38 2015 +0800
modified bug
commit 684cc9cdd14fe542fecdcb7dbcbd5c4f2b5fa896
Author: weitf weicaihui2008@163.com
Date: Sun Sep 13 20:01:00 2015 +0800
enter
commit 173d7cefb5aaf39e507f75bc2eee684bcc816c98
Author: weitf weicaihui2008@163.com
Date: Sun Aug 2 20:49:55 2015 +0800
add
commit abc7aad64f696dac62c334eac376a093101d2355
Author: weitf weicaihui2008@163.com
Date: Sun Aug 2 20:44:14 2015 +0800
2.第二步:
weitf@WEITF-PC /d/workspace/sync/extract_patch (weitf)
$ git reset –hard 7032a5
HEAD is now at 7032a53 modified bug
3.第三步:
weitf@WEITF-PC /d/workspace/sync/extract_patch (weitf)
$ git log
commit 7032a536a4e29fa402fc88ff57101dbe2068137f
Author: weitf weicaihui2008@163.com
Date: Sun Sep 13 20:27:38 2015 +0800
modified bug
commit 684cc9cdd14fe542fecdcb7dbcbd5c4f2b5fa896
Author: weitf weicaihui2008@163.com
Date: Sun Sep 13 20:01:00 2015 +0800
enter
commit 173d7cefb5aaf39e507f75bc2eee684bcc816c98
Author: weitf weicaihui2008@163.com
Date: Sun Aug 2 20:49:55 2015 +0800
add
commit abc7aad64f696dac62c334eac376a093101d2355
Author: weitf weicaihui2008@163.com
Date: Sun Aug 2 20:44:14 2015 +0800
add
4.第四步:
weitf@WEITF-PC /d/workspace/sync/extract_patch (weitf)
$ git reflog
7032a53 HEAD@{0}: reset: moving to 7032a5
3138d2b HEAD@{1}: commit: modified bug
7032a53 HEAD@{2}: commit: modified bug
684cc9c HEAD@{3}: commit: enter
173d7ce HEAD@{4}: commit: add
abc7aad HEAD@{5}: commit: add
e9ca6c9 HEAD@{6}: commit: unix
c8048f5 HEAD@{7}: checkout: moving from master to weitf
c8048f5 HEAD@{8}: checkout: moving from weitf to master
c8048f5 HEAD@{9}: checkout: moving from master to weitf
c8048f5 HEAD@{10}: clone: from git@code.youkuaiyun.com:snippets/838700.git
5.第五步:
weitf@WEITF-PC /d/workspace/sync/extract_patch (weitf)
$ git reset –hard 3138d2b
HEAD is now at 3138d2b modified bug
上面从没有git reset –hard使用–>使用–>恢复过程现象。
说明:一般误使用,可以使用 git reflog,查看你使用git的过程:
$ git reflog
7032a53 HEAD@{0}: reset: moving to 7032a5这个刚刚误操作git reset –hard 7032a5
3138d2b HEAD@{1}: commit: modified bug如果恢复使用3138d2版本号再使用git reset –hard 3138d2
7032a53 HEAD@{2}: commit: modified bug
684cc9c HEAD@{3}: commit: enter
173d7ce HEAD@{4}: commit: add
abc7aad HEAD@{5}: commit: add
e9ca6c9 HEAD@{6}: commit: unix
c8048f5 HEAD@{7}: checkout: moving from master to weitf
c8048f5 HEAD@{8}: checkout: moving from weitf to master
c8048f5 HEAD@{9}: checkout: moving from master to weitf
c8048f5 HEAD@{10}: clone: from git@code.youkuaiyun.com:snippets/838700.git
恢复使用最后两步即可