以前回滚代码一直停留在git revert
的时代,这种方式固然能够解决问题,但操做起来至关繁琐。每一个提交都须要执行一次revert
操做。git
最近使用到了一个新的回滚方式,就是git push -f
,原理就是回滚到某个特定版本,执行一次强制覆盖。code
操做的具体步骤:it
git reset --hard xxxx git push -f
简单对比这两个命令,仍是各有优点的。大方向说,各有各的适用场景。你执行了push -f
后,这个版本后git log
就被完全清空了,是没法再从新找回的。class
git revert
就不同,每次执行都有版本提交。目的不一样,手段不一样。原理