在没遇到这个问题之前,从没想过git版本回退的问题,直到今天在项目中,提交了错误的版本,使得项目运行出错、造成了不小的困扰。
解决方案:
在终端执行:
1、查看提交记录,获取版本号commit
git log
2、本地回退
选取对应版本的版本号,执行其一:
【注】使用 --hard 参数,回退到相应版本,会放弃当前的修改
git reset --hard <版本号>
【注】使用 --soft 参数,回退到相应版本,并保留当前的修改
git reset --soft <版本号>
3、远端覆盖
加上参数 --force,使远端的仓库也回退到相应的版本
git push origin <分支名> --force
可能的报错信息:
You are not allowed to force push code to a protected branch on this project
原因及解决方法:
gitlab对仓库启用了保护,需要在仓库中设置一下:
Repository ——> Branches ——> project settings ——> Protected branches,
下滑找到项目,点击 Unprotect 按钮,使项目不受保护即可。