码云线上误删主项目文件夹的恢复
- 前言描述
- 解决办法
- 解决问题
前言描述
本来某个项目即将上线,然后同事不知道怎么的,直接打开了自己的码云,在网站上把主项目目录删除了
。。。。是的,删除了!!!!
收到消息的一瞬间,我感觉我的项目奖金
要泡汤
了,世界杯
赔的本来就只剩个苦茶子了:西班牙你是真不争气,葡萄牙你太争气了。。。。。
没想到还要遭遇这样的不幸,苍天啊,大地啊,你为什么要这样对我!!!!!!
我只恨当初建仓库的时候,为什么要把这个勾上
这小子食不食想跑路了?但也不是这么删的啊。。。
删完之后的目录。。。
解决办法
平时本来也就只是push和pull,以及建立仓库
什么的。我连个冲突处理
都没怎么搞过。。。
先试试git status
看看暂存区
结果线上删除的,本地并不会记录。
在看看提交记录git reflog
看看本地提交记录。果然还是没有看到删除的提交
记录。。。
但是在码云
上是可以看到删除的提交记录
的。
项目奖金要没了吗
解决问题
既然如此 那我只能用那一招了。
同事:马萨卡?!
我:没错,就是那一招:百度,启动!!!
查了一段时间以后,发现回退一下版本
就可以了。
这里我要回退到上线前的的最后一次修改版本
。版本号为1027437
,但是这里显示当前版本就是
那就拉取以下,获得最新的版本号,再设置吧。结果。。没办法拉取
。(因为项目被删了。。。)
也提交不了
。。。。。坏了
难道就这么结束了吗?
不!不!不!不要小瞧我和奖金之间的羁绊啊,魂淡!给我高高的飞起来啊!
又想了一会,我们换个思路,不直接回退到当前的版本,而是回退到之前的版本
。
我们可以先回退到上上个版本
,然后再回退到上一个版本
。
我这里的上上个版本号为:b273c25
先设置为当前版本
git reset --hard 版本号
这里可看到b273c25已经是头了。
然后再强制推送一下。
git push origin HEAD --force
然后我们再登录码云,看看项目是否还原。
成功了!!!!!!!!
这里可以看到已经还原了。只是版本还不对,那么重复上述操作,将版本设置为1027437
设置版本
查看当前的版本
将当前版本强制推送到远程仓库
然后再看一下码云上的本版本号
项目奖金总算保住了。呜呜呜
抓紧勾上