如何删除过去 merge 到 master 的分支?
来自类似:
master
... a---> b ---> c ---------> d -----> e ---> f ---> g ---> h
\ /
x ---> y ------> z
branch1
至:
... a---> b ---> c ---------> d -----> f ---> g ---> h
\
x ---> y ---> z
branch1
我想撤消/删除我之前所做的将分支 merge 到 master 的操作。
我尝试过类似的方法,但遇到了冲突。这可能吗?
# currently we are in <h> commit in master branch
git checkout master
# new temporary branch
git branch tmp_master
git checkout tmp_master
# reseting temp. branch to reqd. commit
git reset <d> --hard
# cherry-picking subsequent commits
git cherry-pick <f>..<h>
完成后——正如我所期望的那样:
# change temp. branch to master branch
git branch -D master
git branch -m master
最佳答案
git rebase --onto d e
将从 h
的分支历史记录中删除 e
。请参阅here了解更多信息。
关于git - 删除历史记录中 merge 的分支?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39510280/