昨天晚上头脑一发热,丢失了之前忘记提交的代码,情况如下:
有两个分支master,develop,使用develop作为开发分支,前段时间开发了一些代码在develop上,忘记提交,昨晚头脑发热直接切换到master目录下,导致无法找到之前开发的未提交的代码,通过在讨论区提问和自己查找资料,最终找回代码,具体操作如下:
使用git reflog命令找到我昨天切换分支的日志即cee30a8 HEAD@{3}:checkout: moving from 90ccea197...这行,其中90ccea1...为SHA-1码,用来唯一的标识一个代码快照,这也就是我要还原回去的代码快照。
先建立一个临时分支recover-branch并指向90ccea197...标识的快照,则该分支即为之前未提交代码的develop分支状态,然后再将其合并到develop和master解决问题。
下次得记得当前分支未提交代码在不提交的情况下切换分支,得使用git stash。
感谢讨论区的朋友的回答