git提交到了错误的分支,如何解决

明天就要放假了,今天上班有点心不在焉···然后就翻车了,已经commit了好几次才发现自己不在正确的那个分支上。

解决方法:

  1. git log显示出当前分支上的所有commit
  2. 复制最近一次正确commit的ID
  3. git reset commitID (默认是--soft模式,加不加都可以。即不会更改index或working directory 中的内容)
  4. git checkout本应提交的那个分支名称
  5. git commit 在当前这个正确的分支上提交刚刚那些走错门的commit

注意:

  • 千万要注意第3步使用reset 时要慎用 --hard 选项,他会把index和 working directory也回退到你指定的那次commit。
  • 如果你只是做错了一次提交,可以将2 和3 省略为 git reset --soft HEAD^
  • 我尚未push到远端。

 

关于 git reset 命令,参考:https://git-scm.com/docs/git-reset

关于 reset 和 checkout 的详解: https://git-scm.com/book/zh/v2/Git-%E5%B7%A5%E5%85%B7-%E9%87%8D%E7%BD%AE%E6%8F%AD%E5%AF%86

关于类似问题的解决方法,参考:https://www.clearvision-cm.com/blog/what-to-do-when-you-commit-to-the-wrong-git-branch/https://stackoverflow.com/questions/2941517/how-to-fix-committing-to-the-wrong-git-branch

posted @ 2020-06-24 14:40  略略略——  阅读(2507)  评论(0编辑  收藏  举报