git之回退远端版本库

背景

在多分支的情况下,不小心推送到了错误的分支上。这时就需要会对远端版本库。

退回方法

其实回退思路还是比较清晰的:

  • 本地回退到上一提交
  • 将当前状态再次提交到远程仓库

具体实现如下:

  • 查看当前所有的提交记录:

    1
    git log

    找到我们需要回退到提交位置的id:xxxx

  • 本地回退

    1
    git reset --hard xxxx
  • 再次推送

    1
    git push -f

    由于这里推送之后,会出现要推送的版本早于远程版本的情况,所以必须使用-f参数。

扩展

本次在恢复后再推送时,报了个错:

IMG_8572

这是由于我在git仓库对master分支进行了protected。取消掉之后就可以了。