在未同步到服务器之前,发现git commit错误可以在保存本地内容的情况下进行修复
方法1
直接新建一个分支,例如dev_xxxx
回到提交错误的分支上,执行
#回退到上个版本,将上个版本到回退间的文件保留在暂存区,切换分支后,暂存区文件会丢失
git reset --soft HEAD~
然后切换到dev_xxxx,直接push即可,回到master会发现所有改动都已复原
方法2
#回退到上个版本
git reset HEAD~ --soft
#暂存未提交文件
git stash
#切换(或新建)到你期望的分支
git checkout your-correct-branch
#重新应用缓存的stash
git stash pop