代码开发过程中,当忘记获取最新代码,已经执行git commit,控制台报错,提示需要先拉取最新代码,进行代码合并时,由于已经commit,本地修改已经提交,此时就需要git commit回退
git reset --soft HEAD^
可以执行以上操作,是撤销上一次的commit,这里的参数reset是命令,具体可携带参数如下:
– --mixed
意思是不删除工作空间改动代码,撤销commit,并且撤销git add 操作
--mixed
是git reset
的默认参数,即git reset --mixed HEAD^
与git reset HEAD^
效果是一样的
– --soft
不删除工作空间改动代码,撤销commit,add操作还在,想要再次提交直接commit就可以
– --hard
删除工作空间改动代码,撤销commit,撤销git add操作,此操作会将本地代码彻底回退到指定的版本,已修改的代码也都不复存在,谨慎使用
– HEAD^
HEAD^是上一个版本的意思,也可以写成HEAD~1
如果进行了两次commit,都想撤回,可以写成HEAD~2
如果想回退到指定提交,可先执行以下操作
git log
该命令可展示commit
日志,找到自己需要回退到的commit id
信息,复制具体commit id
信息,再执行以下操作
git reset --soft 123ee534108a7a630d11132624e4cc2785dc08f9^
如此即可回到指定commit
了,注意^
符号不可少