首页 > 解决方案 > Git - 如何撤消错误本地分支中的提交?

问题描述

我的 Git 设置是这样的,我在本地“功能”分支中工作,并在我工作时将更改提交到该分支。当代码准备好后,我合并到我的本地“开发”分支中。然后我将本地“开发”分支中的更改推送到远程“开发”分支。

我对文件进行了一些更改并提交了它们,但没有意识到我在本地“开发”分支而不是“功能”分支上。在将“开发”分支推送到远程“开发”分支之前,我意识到了自己的错误,因此更改仍然是本地的。

如何撤消对本地“开发”分支的提交?我正在使用 Tortoise Git,但如果需要,我仍然可以使用 Git 命令行。

注意:这不是我第一次提交功能分支或第一次合并到开发分支。

标签: git

解决方案


有几种方法可以解决问题。一种方法是在您的分支cherry-pick上提交。feature然后reset你的develop分支到上一个提交。

  1. git checkout feature
  2. git cherry-pick <commit hash>
  3. git checkout develop
  4. git reset --hard HEAD~1

推荐阅读