代码开发过程中,当忘记获取最新代码,已经执行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了,注意^符号不可少
Git回退操作指南:如何撤销commit
在代码开发中,如果忘记获取最新代码并已提交,可以使用gitreset命令回退。--soft选项保留改动但撤销commit,--mixed(默认)同时撤销commit和add,而--hard会删除改动。HEAD^表示上一版本,通过gitlog查找特定commitid,用gitreset--softcommitid^回退到指定版本。需谨慎使用--hard,因为它会丢失本地改动。
3902

被折叠的 条评论
为什么被折叠?



