使用git reset进行回滚时,经常涉及到reset的三种模式:--hard, --mixed(default), --soft,这三种模式进行回滚的级别是不一样的,具体如下:
--hard:回滚到代码级别,本次提交后的所有改变都会丢失,因此要慎用
--mixed:回滚到index级别,即本次提交后的commit信息和index信息都会丢失,但代码保持不变。这是默认模式
--soft:回滚到commit级别,即仅仅删除commit信息,index和代码都不变,这是最轻量级的回滚
总结如下表:
commit | index | source | |
--hard | yes | yes | yes |
--mixed | yes | yes | no |
--soft | yes | no | no |