记一次"git reset --hard origin/mast
2022-04-14 本文已影响0人
西门吸雪
同事们都下班后,我也开始合并代码,准备打包发给测试。拉去远端代码时候提示:
The following untracked working tree files would be overwritten by merge:
Pods/Local Podspecs/XXXX.podspec.json
//注:XXXX是我们自己一个私有库
当时我就很奇怪,因为这个库我确实改动了一行代码,且为了固化版本也改成了本地引用并push了代码,按道理说,其他人合并代码后,适合我的代码是一致的,但是不知道为什么出现这个原因。
不过幸好我的习惯是先“git commit”,然后“git pull”,跑起来没有问题之后再“git push”.
然后“pod install”、“git pull”等操作都无法解决这个问题,于是我上网搜方法,然后看到了这篇文章:
image.png
因为着急,说实话,我只关注到了“最终解决方式”这一块,然后一步一步的输入、回车,最后一步回车完成后,看了IDE有一写反应,然后然后就发现提交的代码全没了!!!!
代码虽然不对,很快也能重新写好,但是因为第一次遇到这情况,还是想解决它,而不是绕过去。(其实就是因为自己手贱,瞎JB操作自己不熟悉的命令,还没经过大脑导致的。自己又有点不服,想硬扛而已。)
时间已经有点晚了,为了不太晚下班,我继续找方法解决,虽然找到了很多,但是由于刚吃完屎,还没擦干净嘴,不敢再乱尝试,特别是“git reset ...”的指令。经过一一排查网上的各种解决办法,我看到了下面这个:
image.png
还是不想再吃新鲜热乎的了,我就先执行第一步
git reflog
简单等待后,出现了曙光
ximenxixue@bogon SZXD % git reflog
922ab120f (HEAD -> dev/V4.12.0, origin/dev/V4.12.0) HEAD@{0}: pull: Fast-forward
fa630f6f3 (origin/test, origin/pre, origin/master, origin/develop, origin/dev/V4.7.1, origin/HEAD) HEAD@{1}: reset: moving to origin/master
380125a6e HEAD@{2}: commit: bug fix : 13 pro 系列 高德地图SDK bug
740275d0c HEAD@{3}: commit: commit:xxx
e71ebc7eb HEAD@{4}: pull origin dev/V4.12.0: Fast-forward
... ...
上面的“380125a6e HEAD@{2}: commit: bug fix : 13 pro 系列 高德地图SDK bug ”就是我只 commit 没有 push 的代码。并且本地已经 被“reset“。但是如何恢复,我没有立即使用"git reset --soft HEAD@{2}",还是担心出问题。
于是我咨询了一下其他人,把上面的窗口内容发过去,
image.png
然后就好了!