java

关注公众号 jb51net

关闭
首页 > 软件编程 > java > GitLab IDEA中回滚主分支

GitLab在IDEA中回滚主分支问题

作者:小楊同学的笔记本

这是工作中遇到的问题,记录下来,也方便自己后面查看操作步骤,也方便各位遇到这个问题,不至于卡太久,如有错误或未考虑完全的地方,望不吝赐教

GitLab IDEA中回滚主分支

首先切换到主分支,这里以图中ejob项目为例。

切换到主分支后,打开ejob项目的git历史记录。

例如

图中,从当前位置准备回滚到指定位置,右键选择Reset Current Branch to Here...。(注意:操作前要确认代码有没有备份,其他分支或者本地有没有,别到时候回滚后,代码没了,没备份就难搞了)

点击后会出现一个弹窗,选择Hard。只有选择hard才会删掉之前所有的记录。

点击Reset后,就会发现git的历史记录,回滚位置之前的记录都不见了。

因为GitLab会保护主分支,如果我们直接push,是会出问题的,所以我们应该先关掉GitLab中,对ejob项目主分支的保护。

打开GitLab的ejob项目页面,选择Setting

然后选择Protected branches,点击Unprotect,就会把主分支的保护删除掉。(可以恢复,放心操作)

点击后,那条保护没了,说明操作成功。

因为当我们使用git的push操作时,git会默认pull把远程的内容拉取下来,所以我们需要通过命令git push -f推到主分支,加上-f就push的时候就不会进行pull操作。但是由于IDEA的push是没有-f的操作,所以我们是需要通过命令来执行的。

然后回到IDEA中,打开底部Terminal窗口(直接打开项目的文件夹,右键点击Git Bash Here也是可以的),然后进入ejob项目的文件夹。

输入git push -f提交。

然后我们就可以到GitLab的ejob项目主分支看历史记录,如果提交记录最新到我们现在的回滚位置,那么说明回滚成功。

然后我们再把主分支的保护开启。

选中master后,点击Protect恢复对主分支的保护。

到此为止,就完成对主分支的回滚。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文