繁体   English   中英

恢复合并合并的多个分支以进行开发

[英]revert multiple branch merged to develop

因此,我有一个名为BRANCH_A的分支,还有另一个名为BRANCH_B分支,这两个分支合并成一个分支。 现在, BRANCH_A ,由于某些原因,它看起来像是回归,可能合并得不好。在合并之后,我在BRANCH_A也进行了一些次要的提交,无论如何,我需要在合并发生之前将BRANCH_A恢复为安全的提交。 我遵循堆栈中其他类似问题的帖子,并且如下所示:

首先在BRANCH_A内部创建一个备份分支:

git branch BACKUP_A

然后从昨天重置为SHA,这是在合并发生之前的提交:

git reset --hard SHA

然后将BRANCH_A指向备份分支:

git reset --soft BACKUP_A

然后提交:

git commit -m "Revert to SHA id"

并推:

git push

这将恢复为该提交,但是问题是,在该合并中我仍然有其他分支更改(对于BRANCH_B),并且这仅恢复了我在合并后所做的那些较小的提交。

我该如何还原到其他分支(BRANCH_B)中来的更改,而仅保留我实际上在BRANCH_A中所做的更改(合并之前的提交)。

因此,我可以通过以下操作解决此问题:

在有问题的branch_a内部:

Git reset —hard commitID
Git merge origin/develop
Git push -f

然后结帐开发并删除branch_a

git checkout develop
git branch D branch_a

然后再次结帐

git checkout branch_a

希望它对面临类似问题的人有用。

注意:运行Git push -f时要小心,因为如果输入错误,则会丢失代码

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM