git回退代码

场景:同个项目同时开发两个版本分支,不小心将a版本代码提交到b版本,想要将代码会滚到提交前。

通过在网上搜索答案和实践,总结出以下操作步骤:

1. 项目右键后,然后在“Show History”中找到当前版本(暂时取名newVersion)和想要回退到的版本(暂时取名oldVersion)

  

2. 选择oldVersion版本右键点击“Copy Revision Number”复制oldVersion版本的版本号:

3. 然后右击项目依次选中:Git->Repository->Reset HEAD

4.  Reset Type项选择Hard,To Commit项填写刚刚复制的版本号;然后点击Reset按钮


5. 这时本地代码已经回退到oldVersion,这时候如果直接push到远程仓库,会提示版本冲突,点击“cancel”取消。 


6. 下面有两种解决冲突的方法 (我选择的第一种)

方法一 :不解决,直接强制提交: 
a. 打开Terminal,切换到项目所在目录 
b. 执行:git push -f 

方法二: 
a. 右击项目依次选中:Git->Repository->Reset HEAD 
b. Reset Type项选择Mixed, To Commit项填写最新提交记录版本号(切记是最新分支的版本号newVersion分支);然后点击Reset按钮 

c. 这时你会发现,最新版本有回到newVersion。但是代码还是oldVersion的代码,这时候重push到远程仓库就不会版本冲突了 

此方法代码会回滚 但是分支不会

7. 方法一vs方法二 
方法一会将回退的提交记录抹点,而方法二会保留 
 
————————————————
版权声明:本文为CSDN博主「彭英峻」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/pengdeman/article/details/84788112

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值