删除 GitHub 远程仓库中 master 分支的多个提交

来源:互联网 发布:软件故障处理要求 编辑:程序博客网 时间:2024/06/03 20:11

一、本地切换到master分支

git checkout master

二、新建old_master分支备份,以防万一

git branch old_master 
git push origin old_master:old_master 将本地old_master分支推送到远程old_master
打开github repo,查看old_master是否和master一致。

三、删除远程master分支

设置github中默认分支为非master分支,否则,下一步删除操作被github禁止,github不能删除默认分支
删除远程的master分支 (注意master前有个:)
git push origin :master

四、版本回退并重新创建远程master分支

本地仓库彻底回退到某一个版本
git reset --hard commit_sha(for example: a10801cc21c2dd4e6fb2d1fdcd6e1ac4fbbfebcf) 
git push origin master

五、通知项目组同事本地master同步远程master分支

git reset --hard origin/master




original link:https://ruby-china.org/topics/26320


其他方案:

1. 直接 reset 到某一个版本的分支,然后 git push origin +master 强制提交 master 分支就好了,前提是你备份好本地的 master 分支。


2. 还原到某个commit,然后强推即可

git reset commit_id --hardgit push origin HEAD --force

强推前,用记下远程分支的commit_id即可








0 0
原创粉丝点击