git回滚远程仓库代码/错提master分支的恢复

前言

今天周五了,刚接了个新微服务模块,下班前高高兴兴开发完,提交git代码,jenkins发布到测试环境。突然看到一个提示

我最近提的代码呢?!!

想到可能会提错仓库,转念一想,不对呀,我怎有这么高的权限提到master呢?

去gitlab上看看,果然是推到了Master分支!/泪目 /泪目

于是有了这篇折腾记录!

正文

推送代码到正确的仓库

首先我得把现有的代码搞到dev分支,当前是在master上,master已经检出到本地master分支上了,

直接用现成的

master -> orgin: dev (具体命令我是不会写了)

回滚本地master代码

git log 查看commit 版本号

git reset --hard 'master没乱之前的版本号'

强制回滚远程分支

git push -f origin master 强制推送当前分支到远程master

这里会出现一个问题,很有可能master分支会处于被保护状态,这里以gitlab举例,在左侧版本库中会有一个设置关闭保护的,点unprotected按钮就好了,上面的代码会正常,此时gitlab上代码已经正常了!注意恢复现场!

重新拉一份项目

经过上边的一些操作,开发工具分支可能有混乱的可能,所以推荐重新拉一份代码

git clone 'git的url'

切换到dev分支

本地切换出dev分支

git checkout -b dev

当然也可以使用开发工具里的

这里就不多说了,去找管git权限的人把自己的master权限关掉去!

posted @ 2019-03-01 19:40  东北小狐狸  阅读(5484)  评论(0编辑  收藏  举报