美文网首页
Git删除远程分支上的某次提交

Git删除远程分支上的某次提交

作者: lyichao | 来源:发表于2019-01-15 17:58 被阅读0次

    起因:

    手欠没注意错误地提交到远程master分支上

    目的:

    正确回退到错误提交前的master分支上

    解决思路分析:

       1.为了保障不会因为二次错误导致master分支更加混乱,为此新建多一个new_master分支。
       2.push master分支的代码到new_master分支上。
       3.new_master分支上回退到指定某支正确的分支。
       4.把new_master分支提交到远程仓库上。
       5.删除master分支。
       6.重新创建master分支并push new_master分支的代码到本master分支上。

    操作步骤:

    1.在master分支上输入命令,创建new_master分支:

    git branch new_master
    

    2.切换到new_master分支:

    git checkout new_master
    

    3.push master分支的代码到本new_master分支上:

    git push origin master
    

    4.获取提交记录并回退到指定某支正确的分支:

    git log 复制某支正确的分支commitID
    git reset --hard 历史版本commitID
    

    5.提交new_master分支到远程仓库:

    git push origin new_master
    

    !!!(有注意点,看底部)6.删除master分支:

    git push origin :master
    

    7.重新创建master分支并进行pull操作拉取new_master的代码:

    git pull origin new_master
    

    注意事项:

    如果没法正常删除master分支,可以先到远程仓库(github/gitlab)上查看当前的默认分支是不是master,如果是则切换new_master为默认分支再进行删除操作即可!

    相关文章

      网友评论

          本文标题:Git删除远程分支上的某次提交

          本文链接:https://www.haomeiwen.com/subject/wbwydqtx.html