解决方法:
-
找到最后一次提交到master分支的版本号,即【merge前的版本号】
-
会退到某个版本号
git reset --hard 【merge前的版本号】
这个时候已经会退到了上一次提交的版本,但是之后的修改还是存在master分支上,以下步骤很关键
- 重新创建一个分支,这时候的分支就是上一次提交的代码
git checkout -b newmaster
- 推到对应的远程newmaster
git push
-
一般默认分支为master分支,现在要先将远端的master分支修改为非default分支,即先把default分支切换为其他分支。
-
这个时候相当于备份做好了,接下来就可以删除本地及远端的master分支
git branch -d master
git push --delete origin master
- 从newmaster分支,重新在创建master分支,并推向远端
git checkout -b master
git push
-
将master分支切换为default分支。
-
完成。
参考文章:https://www.cnblogs.com/joshua317/p/5761920.html