Git的撤销与回滚

1,commit  之前的撤销


未添加至暂存区的撤销(add 之前)
git status
git checkout .


已添加至暂存区的撤销(add 之后,有或者没有commit操作都可以执行)
git reflog
git reset --hard  bca6882(relog 中展示的commitId)
2,push之后的撤销 ( git add . git commit -m "commit" git push origin brandname ) 等一系列操作后的撤销 不想将本次的操作生效 git revert commitId(提交的id) git push origin brandname 此次操作就会撤销掉上一次的push 在这个分支上,会生成一条revert 的提交记录 revert 是负负得正,什么意思呢,就是说第一次revert的时候,
上一次push的命令就失效了,再一次revert 后,会回退到之前的之前的状态,

详细的介绍一下 比如我操作一个文件UserController.java 将userName 改为username 经过一系列的git操作 git add . git commit
-m "commit" git push orgin 后,再进行git revert commitId 再进行git push origin branchname userName 还是userName, 如果我再revert 的时候, git revert git push origin branchname 将userName 还是改为username. 总结为: git revert 为奇数时生效,为偶数时,失效 3,git 回滚: 将git 回滚到某一次commit操作,在该commitId之前的操作,将全部失效(此方法不建议使用,有风险), git reset --hard commitId git push origin branchname --force (强制覆盖)

因为是不可逆的,不建议使用

 

posted @ 2018-04-22 21:39  小啊菜鸡  阅读(1340)  评论(0编辑  收藏  举报