git branch --delete dev 删除本地分支
git回退到某个commit
git reset --hard HEAD^ 回退到上个版本
git reset --hard HEAD~3 回退到前3次提交之前
git reset --hard commit_id 退到/进到 指定的commit(使用git log查看历史提交信息)
git push origin HEAD -- force 强退至远程
git回退到某个commit 推送远程
1.先查询对应的提交历史,使用如下命令:
git log --pretty=oneline
2、版本回退,使用如下命令:
git reset --soft commitID //只删除commitID之后的提交记录log,代码的改动还在。
git reset --hard commitID //彻底删除commitID之后所做的改动,代码也一起回退回来了。
(慎重用,用前最好备份一下代码,或者用git diff 生成一个patch)
3.把当前分支push到远程仓库并且让远程仓库和当前分支保持一致,使用如下命令(假定当前分支为master):
git push -f origin master
git reset --soft commitId
或者使用以下命名回退最近一个commit
git reset --soft HEAD^
HEAD^的意思是上一个版本,也可以写成HEAD~1
如果你进行了2次commit,想都撤回,可以使用HEAD~2
几个参数: –mixed 意思是:不删除工作空间改动代码,撤销commit,并且撤销git add . 操作 这个为默认参数,git reset --mixed HEAD^ 和 git reset HEAD^ 效果是一样的。
–soft 不删除工作空间改动代码,撤销commit,不撤销git add .
–hard 删除工作空间改动代码,撤销commit,撤销git add .
注意完成这个操作后,就恢复到了上一次的commit状态。
顺便说一下,如果commit注释写错了,只是想改一下注释,只需要: git commit --amend