git 版本回退方法

ORIG_HEAD 某些操作,例如 merage / reset 会把 merge 之前的 HEAD 保存到 ORIG_HEAD 中,以便在 merge 之后可以使用 ORIG_HEAD 来回滚到合并之前的状态(在分支合并的时候,产生了冲突,如果已经修改了冲突,并产生了新的提交,但是冲突解决的有问题,想要还原之前的状态重新合并,这时可以使用 git reset --hard ORIG_HEAD 来还原到合并之前的状态)

 

参考:https://www.jianshu.com/p/c2ec5f06cf1a reset

流程图https://git-scm.com/book/zh/v2/Git-%E5%B7%A5%E5%85%B7-%E9%87%8D%E7%BD%AE%E6%8F%AD%E5%AF%86

1.reset

用git log 查看commitId,然后用git revert --hard 【commitID】,然后git push -f [remoteName] [branchName]

若不用--hard  git revert HEAD^会有冲突要解决,要修改后git add /commit /push - f 后生

 

 

 

 

 

 2.revert

通过revert反做一个版本,git revert是用于“反做”某一个版本,以达到撤销该版本的修改的目的

比如,我们commit了三个版本(版本一、版本二、 版本三),突然发现版本二不行(如:有bug),想要撤销版本二,但又不想影响撤销版本三的提交,就可以用 git revert 命令来反做版本二,生成新的版本四,这个版本四里会保留版本三的东西,但撤销了版本二的东西

 git revert -n 版本号(-n是--no-commit如果不带这个参数会自动提交一条commit)   git revert --abort  取消    git commit -m 版本名      git push 即可

https://www.jianshu.com/p/5e7ee87241e4

git revert --no-commit  xxx..xxx这样可以回退

 

posted @ 2019-08-24 19:01  little_ab  阅读(2289)  评论(0编辑  收藏  举报