git撤销本地和以及push到远端的commit
发现自己commit的代码中还有错误、写的不好等等,就用reset来撤回吧
即便是已经提交到远端仓库中的也可以重置。
使用git reset来回退本地版本:
- 先Git log查看历史版本
- HEAD是当前版本
- HEAD^表示上一个版本,可以多个,也可以使用HEAD~n的形式
- git reset <版本号>
- 可选参数–hard 不会保存当前工作区的修改,会把指定版本之后的修改全部删掉.慎用
- 可选参数–soft 重置到指定版本,后会保存工作区的修改。不进行暂存区和工作区的覆盖.如果还要提交,可以直接commit。
- 默认–mixed 后会保存工作区的修改,覆盖暂存区,但不覆盖工作区。如果还要提交,要先add,再commit
一般情况用默认就好了
重置远端:
- git push origin <分支名> –force
直接使远端回退到跟本地一样的版本