错误推送到主分支后将更改推送到不同的分支

  • 本文关键字:分支 错误 git
  • 更新时间 :
  • 英文 :


我的意思是将我的更改提交到本地"功能"分支,并将它们推送到相应的远程"功能"分支。但相反,我不小心将更改提交到本地"主"分支,并将我的更改推送到远程"主"分支。

如何撤消推送到"主"(本地和远程(的更改,并将这些相同的更改推送到预期的"功能"分支(本地和远程(?

听起来你在错误的分支上犯了一些事情? 好.....这并不难。

签出本地功能分支。挑选您在主节点之上提交的更改。比如说,这是最后 2 次提交,然后git cherry-pick master~2..master.然后将本地功能推送到远程功能。然后将主指针重定向到正确的位置git branch -f master master~2。然后以正确的位置推动掌握:git push -f whatever-remote master.这应该可以。

对原始问题的原始回答

我想你有一个本地分支机构来解决这个问题,对吧?您错误推入主节点的分支。我们称之为分支-a

git push whatever-remote branch-a # if you want the remote branch to be called branch-a as well git push whatever correct-revision-id:master # revert master to where it was

这应该足够了。

您需要强制推送到较旧的引用:

git push -f origin last_commit:branch_name

然后,可以将更改推送到功能分支。确保没有其他用户尝试在您要删除的提交之上进行构建。

最新更新