git 撤回

撤回git中merge错误的代码

现在有两个分支: addload和feat

1. 在分支addload上开发完成后,将feat分支的代码合并到addload上面执行的是:

git merge feat

2. 合并完成后发现,不应该这样合并,想要撤回合并

(1)  在addload上查看当前分支的提交日志:

git reflog

 

 

 (2)  撤回命令:

git reset --hard xxxx

  

其中 037ff12 这个版本号表示当前状态,248523b 表示merge之前的版本号,现在要撤回到merge之前的状态,所以应该执行代码:

git reset --hard 248523b

  

 (3)  撤回后效果达到想要的状态.

 下图可以看到,我们执行撤回当前版本的操作是代码没有变化.(git reset --hard 037ff12),但是执行撤回到上个版本的操作时,会发现代码也被撤回,从而达到效果(git reset --hard 248523b)

 

 

 此时本地分支上的代码已经撤回到上一个版本了,如果想要撤回远程分支的内容需要紧接着强制推送到远程分支:git push -f

git push -f

 

 

 

 

 

posted @ 2022-01-13 14:40  Evident  阅读(45)  评论(0编辑  收藏  举报