我有一个具有以下结构的Git仓库:
A--B--C--D--E
我想将C提交分成一个分支:
C
/ \
A--B---D--E
我该怎么做?
答案 0 :(得分:2)
git branch new-branch C
将创建一个指向名为C
的{{1}}的新分支,最后以此结尾:
new-branch
答案 1 :(得分:2)
正确的答案是尊重D在输出中有2个父母的事实。我将假设大师指的是E。
git branch new-branch C
git checkout -b merge-base B
git merge --no-ff new-branch
git rebase --onto merge-base D^ master
git checkout master
你最终会得到这个:
C
/ \
A--B---Y--D'--E'
这将保留C作为合并到主分支中的父级。你可以用git rebase -i head ^^^将D压入Y.然后你会:
C
/ \
A--B---D''--E''