二 『现学现忘』Git后悔药 — 33、revert撤销( 三 )

git reset命令是直接在某个分支上,回退到指定的commit,后边的提交不会在版本库的历史中(只能使用reflog查看) 。因而和老的branch再次merge时,这些被回滚的commit应该还会被引入 。通过以上对比可以发现,git reset 命令与 git revert 命令最大的差别就在于,git reset 命令会失去后面的提交,而 git revert 命令是通过反做的方式重新创建一个新的提交,而保留原有的提交 。在企业里,应尽量使用 git revert 命令,能不用 git reset 命令尽量不用 。

参考:
  • http://blog.itpub.net/31524109/viewspace-2653118/
  • https://www.talktocomputer.site/blogs/83/

经验总结扩展阅读