步骤:
1、找到要回退的提交记录编号
2、执行git reset --hard 提交记录编号
3、git push -u -f origin master;
完成回退操作。
若提示:You are not allowed to force push code to a protected branch on this project
分支受保护
解决方法:
(备注:先记录下 分支保护设置,待推送成功后恢复分支保护设置)
项目工程 -> 分支 -> 项目设置:受保护的分支,解除分支保护,重新推送即可
附:完整操作记录
lenoUerr@DESKTOP-5JG MINGW64 /d/workspace/test/gitProject (master)
$ git reset --hard 186c68f825e405e364b5c9f4b6e5963e26eeadb8
HEAD is now at 186c68f Merge branch 'dev1.0.1' into 'master'
lenoUerr@DESKTOP-5JG MINGW64 /d/workspace/test/gitProject (master)
$ git status
On branch master
Your branch is behind 'origin/master' by 36 commits, and can be fast-forwarded.
(use "git pull" to update your local branch)
Untracked files:
(use "git add <file>..." to include in what will be committed)
.idea/
nothing added to commit but untracked files present (use "git add" to track)
lenoUerr@DESKTOP-5JG MINGW64 /d/workspace/test/gitProject (master)
$ git commit -m '回退'
On branch master
Your branch is behind 'origin/master' by 36 commits, and can be fast-forwarded.
(use "git pull" to update your local branch)
Untracked files:
.idea/
nothing added to commit but untracked files present
lenoUerr@DESKTOP-5JG MINGW64 /d/workspace/test/gitProject (master)
$ git push -f origin ;
Total 0 (delta 0), reused 0 (delta 0)
remote: GitLab: You are not allowed to force push code to a protected branch on this project.
To git.test.net:gitProject/project/gitProject.git
! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'git@git.test.net:gitProject/project/gitProject.git'
lenoUerr@DESKTOP-5JG MINGW64 /d/workspace/test/gitProject (master)
$ git push -f origin ;
Total 0 (delta 0), reused 0 (delta 0)
To git.test.net:gitProject/project/gitProject.git
+ 970de3e...186c68f master -> master (forced update)
lenoUerr@DESKTOP-5JG MINGW64 /d/workspace/test/gitProject (master)
感谢查看