Git使用,如何快速回退远端的分支版本

之前不小心合并到同事提交的错误的代码,因为同事进行了错误的merge并提交,导致远端的分支上代码已经十分混乱了,于是研究了下怎么回退远端分支。

使用的git是码云的git仓库,开发工具是idea。

首先上码云(或者对应仓库,或者直接在idea的version history里)看最近的一个较为正确的代码版本是多少,确定要回退到的远程分支版本。

然后通过

git reset --hard 85d890681b6935350c0d8cf373699675c3dfbbf9

将本地分支强行恢复到正确的版本。

之后使用强制提交覆盖

git push -f

覆盖后当前本地的分支就强制提交到了远端分支,远端分支就回退到了对应版本。

接下来有几种情况:

1.如果其他同事没有pull到错误的提交,也就是他们本地还是基于上一次正确提交的话,那他们可以直接提交当前更新,因为基于的版本号是一样的。

2.如果其他同事已经pull到了错误的提交,但他们自己并没有做代码的编写或者更新,也没有commit过,那直接用第一条命令reset回退到正确版本就好了。

3.如果其他同事pull到错误的提交并且没有注意,在错误的提交上做了commit与push,那如果想要找回这次更新,需要他自己在提交历史中确定提交的哪些文件,然后使用第一条命令回退之后通过idea的local history功能对那些文件进行恢复,然后再次提交。

 

第三种情况暂时没查到什么同分支下的好的处理方法,如果有的话希望哪位大佬可以分享一下。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值