git撤销合并

git撤销合并

今天在test测试分支上敲代码,提交了。当测试分支合并到master主分支上时,发现test测试分支的配置文件也合并过来了。正确的方法应该是在master分支上写代码,提交后推送至测试分支,记录一下回退过程。

方法一

首先切换到需要回退的分支

//HEAD为对应分支的名称
$ git checkout HEAD

查看commit_id

$ git log

查看对应的commit_id后按q退出

然后本地回退,这里我使用的是第三行命令

$ git reset --hard HEAD^ 回退到上个版本
$ git reset --hard HEAD~n n代表会推到n次前的操作
$ git reset --hard commit_id 进入指定commit的

本地回退之后需要强制推送至远程

//HEAD为对应分支的名称
$ git push origin HEAD --force

回退成功,此时问题已经解决,还有一种方法无需强推,但命令行比上述方法多,方法二的命令行我没敲过,只是记录一下

方法二

本地强制回退

$ git reset --hard commit_id 

在此分支的基础上,重新创建一个分支,newmaster为新分支名称

$ git checkout -b newmaster

将新建的分支推送至远程仓库

$ git push origin newmaster:newmaster

备份完毕删除本地错误分支

//假定本地错误分支为master
$ git branch -d master
//推送至远程
$ git push --delete origin master

从newmaster上分支,重建master

$ git checkout -b master origin/newmaster
$ git push master:master

附上方法二的原文链接
链接: 原文链接

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值