本地 撤销commit https://www.cnblogs.com/lfxiao/p/9378763.html
# 取消本地commit
git reset --soft HEAD~<num>
git reset HEAD^ --soft
# 丢弃本地的所有commit
git reset --hard origin/<branch-name>
-
<num>
代表撤销本地的几个commit-
HEAD~1
一般写作:HEAD^
-
HEAD~2
: 撤销本地没有push的两个commit
-
- 该操作仅仅是撤回commit操作,您写的代码仍然保留。
reset 几个参数:
--mixed
意思是:不删除工作空间改动代码,撤销commit,并且撤销git add . 操作
这个为默认参数,git reset --mixed HEAD^ 和 git reset HEAD^ 效果是一样的。
--soft
不删除工作空间改动代码,撤销commit,不撤销git add .
--hard
删除工作空间改动代码,撤销commit,撤销git add .
注意完成这个操作后,就恢复到了上一次的commit状态。
修改注释:
git commit --amend
此时会进入默认vim编辑器,修改注释完毕后保存就好了。
远程强制覆盖本地master分支
git fetch --all && git reset --hard origin/master && git pull