恢复多个分支合并开发
revert multiple branch merged to develop
所以我有一个名为 BRANCH_A
的分支,还有另一个名为 BRANCH_B
的分支,这两个分支合并为 develop 分支。现在 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
时要小心,因为如果你犯了错误,你会丢失你的代码
所以我有一个名为 BRANCH_A
的分支,还有另一个名为 BRANCH_B
的分支,这两个分支合并为 develop 分支。现在 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
时要小心,因为如果你犯了错误,你会丢失你的代码