一:git add 后的撤销 ----- git reset HEAD 文件名
二:git commit 后的撤销 分三种撤销方式
1:git reset HEAD^ 等同于 git reset --mixed HEAD^ 。 此操作会撤销git commit,撤销git add .
2:git reset --soft HEAD^ 此操作只会撤销git commit 不会撤销git add .
3:git reset --hard HEAD^ 此操作会 删除工作空间改动代码(慎用 会清空本地改动),撤销commit,撤销git add . 注意完成这个操作后,就恢复到了上一次的commit状态。
三:git push 后的撤销
步骤: git revert HEAD ==> git push
注意:push后不建议采取 git reset的方式回退版本号然后 git push --force 的方式强制提交
还有一点要注意的,
图一为两次push的记录
git revert HEAD 会把你本地的上次提交的代码清除,所以如果有需要最好先备份本地代码,然后再执行
git revert HEAD //清空本地上次提交的代码
git push // 提交本地干净的代码来覆盖上次错误的提交
图二 git revert HEAD 后可以看到系统产生了一次新的commit 把之前的一次给覆盖了。