在一个忙碌的下午,快要下班了,辛苦了一天了将自己的代码提交一下吧!熟悉的命令敲完之后发现Oh,My God!提交错项目了;完了回退一下吧!
git push 错误之后的回退:
git reset --hard HEAD^ 先回退到前一个版本(本地)
git push origin HEAD --force 然后强制推这个改动到云端
搞定了!
不对等等,这样虽然修改好了但是这个项目的本地提交全没了,这就是这个命令的弊端
既然出现了问题,有没有好的解决方法呢?git这么强大答案当然是有的:
git reset --soft HEAD~1 回退到前一个版本
git reflog 查看当前游标指向 应该是指向上一个commit
git status 查看当前代码状态发现那些改动的状态为 已add 未commit
此时可以修改重新提交或者
git reset HEAD <file> 撤回add
git checkout --<file> 撤回某文件到和HEAD相同
此时git push --force 强推 结束!