2019年7月29日 上午11:17
理解方法:
- 理解扔掉:add 和commit我回过头去看,有些可能是多余的,我直接扔掉,对我现在的代码没有任何影响
- 回退覆盖:我扔掉add和commit的时候,用不用把我的本地文件给覆盖了。
- 当我们发现,这几天的工作完全错误,以后绝对没用的时候,我们才会覆盖。
- 只有-hard会覆盖,-mix -soft 就看你是扔add还是commit了
git reset 三种用法总结 - alphapersonality的博客 - CSDN博客
- git reset (–mixed) HEAD~1
- 回退一个版本,且会将暂存区的内容和本地已提交的内容全部恢复到未暂存的状态,不影响原来本地文件(未提交的也不受影响)
- ::扔掉add和commit的内容::
- git reset –soft HEAD~1
- 回退一个版本,不清空暂存区,将已提交的内容恢复到暂存区,不影响原来本地的文件(未提交的也不受影响)
- ::只扔掉commit()的内容,不影响add(暂存区)::
- git reset –hard HEAD~1
- 回退一个版本,清空暂存区,将已提交的内容的版本恢复到本地,本地的文件也将被恢复的版本替换
- ::扔掉add和commit的内容:: + 本地的文件也将被恢复的版本替换
- git reset (–mixed) + 本地的文件也将被恢复的版本替换
git reset file(README.md):撤销对暂存区的修改


git reset —soft
git reset —mixed



- 只要我们commit之后,commit的文件是一定不会丢失的。
- mixed和soft的区别:仅仅在于soft暂存区是否会保存这次提交之后的所有变更
git reset —hard


- 这个会覆盖工作区的文件,慎用。否则新敲如的代码就丢了!!
git reset file(README.md)


- 这说明暂存区的东西一旦撤销就丢失了。


