Git-针对主对象重新设置两个分支
我有三个分支:大师、布兰卡和布兰卡。branchB是branchA的分支,最终将合并到branchAGit-针对主对象重新设置两个分支,git,Git,我有三个分支:大师、布兰卡和布兰卡。branchB是branchA的分支,最终将合并到branchA K---L---M---N---O branchB / E---F---G---H---I---J branchA / A---B---C---D master 我需要在两个分支上从master获
K---L---M---N---O branchB
/
E---F---G---H---I---J branchA
/
A---B---C---D master
我需要在两个分支上从master获得更改,所以我运行了以下命令
branch-a> git fetch origin master
branch-a> git rebase -i origin/master
branch-a> git push -f
这正确地重新设定了branchA与master的关系,但我在branchB上遇到了麻烦。试图将其重新设置到branchA(它现在已经从master更改了)并不像我希望的那样工作。我得到了大量的合并冲突时,应该有0,所以我中止了再基地。有点不知所措
当我查看branchB(其基本分支是A)的PR时,它现在显示了branchA和B的提交历史,而它应该是B。我会这样做:
git rebase --onto=branchA branchB~3 branchB
你可以用这样的一种单枪来完成整个过程:
git checkout branchB
git rebase master
git branch -f branchA branchb~3
“3”应该是branchB中的实际提交次数吗?编辑后的帖子反映了实际提交次数并澄清了提交历史。@SamPinheiro
branchB~3
的意思是在您的图表中G
,直到您通过更改图表使答案无效。我不想破坏任何东西,所以我只需要一个精确的答案。上一个示例中,branchA和B的提交次数相同,因此我想确保提交次数正确(以及我需要运行命令的位置),现在是branchB~5