公司小白误用git push -f origin master,导致gitblit以前版本库消失解决办法
情景再现
对于刚实习或入职IT行业的小白来说,git是必须要掌握的技能。许多小白在测试git命令时,推送测试代码不成功,就去网上搜索原因,这时,有的文章就会推荐用git push -f origin master,嘿嘿,当你用了这个命令,看到测试代码推送成功是不是有一种成就感,就在你查看版本库时,看到公司以前的代码都没了,就只剩你推送的测试代码版本,就问你懵逼补懵逼,这时公司群里正好有同事发现了这个情况,看到是你搞的,疯狂的@你,害不害怕,有没有一种身临其境的感觉。
出现这个问题的原因是你没有更新远程仓库的版本到你的本地仓库就直接强制推送,嗯~,强制推送最好不要乱用。
解决办法
出现这种问题,不要害怕,直接勇敢的大声道:“就是我干的,怎么了”(大概率被打死。。。),今天我就来教你怎么解决这个问题。
首先,你需要找一个有最新版本库的同事,然后用git reset --hard 最新版本提交值,如下图
进行这个操作后,再用git push -f -u将以前的所有版本推送,这样就解决了,是不是很简单,至于有没有其他简便的方法,我就不懂了,如果有,希望有懂王在评论区告诉我。