Git rebase --onto 压扁的分支
Git rebase --onto squashed branch
我需要一些帮助,了解如何使用 git rebase --onto
有效地变基工作分支。我试着按照这个文档 https://womanonrails.com/git-rebase-onto
上下文
我从 branch-A
分支 branch-B
。同时 branch-A
被合并到 origin/main
并且他的提交被压缩到 I
.
Old situation Current situation
A---B---C---F---G---I (origin/main) A---B---C---F---G---I (branch)
\ / \
D---E---H (branch-A) D---E---H---J---K (branch-B)
\
J---K (branch-B)
预期结果
我想删除提交 D
、E
、H
并基于 I
Expected result
A---B---C---F---G---I (branch)
\
J'---K' (branch-B)
我不知道我需要在第三个参数上使用哪个提交...
git rebase --onto origin/main HERE
谢谢!
我记得它是一个英文句子:
rebase (from) old_parent (up to) branch_tip onto new_parent
即:
git rebase old_parent branch_tip --onto new_parent
(请注意,参数的顺序与某些人编写它们的顺序不同;--onto new_parent
是一个选项,而不是位置参数,因此可以放在任何地方,我只是觉得它更合乎逻辑结束而不是开始。)
你的情况:
old_parent
是图表上显示为 H
的提交哈希
branch_tip
是 branch-B
(默认为当前签出的分支)
new_parent
是 I
又名 origin/main
因此查找提交“H”的实际提交哈希,以及运行:
git rebase H branch-B --onto origin/main
或:
git switch branch-B
git rebase H --onto origin/main
或者,如果您希望将 --onto
放在首位:
git switch branch-B
git rebase --onto origin/main H
我需要一些帮助,了解如何使用 git rebase --onto
有效地变基工作分支。我试着按照这个文档 https://womanonrails.com/git-rebase-onto
上下文
我从 branch-A
分支 branch-B
。同时 branch-A
被合并到 origin/main
并且他的提交被压缩到 I
.
Old situation Current situation
A---B---C---F---G---I (origin/main) A---B---C---F---G---I (branch)
\ / \
D---E---H (branch-A) D---E---H---J---K (branch-B)
\
J---K (branch-B)
预期结果
我想删除提交 D
、E
、H
并基于 I
Expected result
A---B---C---F---G---I (branch)
\
J'---K' (branch-B)
我不知道我需要在第三个参数上使用哪个提交...
git rebase --onto origin/main HERE
谢谢!
我记得它是一个英文句子:
rebase (from) old_parent (up to) branch_tip onto new_parent
即:
git rebase old_parent branch_tip --onto new_parent
(请注意,参数的顺序与某些人编写它们的顺序不同;--onto new_parent
是一个选项,而不是位置参数,因此可以放在任何地方,我只是觉得它更合乎逻辑结束而不是开始。)
你的情况:
old_parent
是图表上显示为H
的提交哈希
branch_tip
是branch-B
(默认为当前签出的分支)new_parent
是I
又名origin/main
因此查找提交“H”的实际提交哈希,以及运行:
git rebase H branch-B --onto origin/main
或:
git switch branch-B
git rebase H --onto origin/main
或者,如果您希望将 --onto
放在首位:
git switch branch-B
git rebase --onto origin/main H