我目前的分支看起来像:
D
/
H--A--B--C
我试图找出如何生成一个新的git分支,这将使新的git repo看起来像:
D
/
H--A--B--C
\
C
这可能吗?我想过使用重置,但这意味着C的变化也会丢失,所以寻找替代方案。
答案 0 :(得分:5)
好的,所以找到了办法。
我在其中创建了一个带有A的新分支:
git branch new-branch <A sha1>
然后我使用cherry pick在新分支中将C与A合并:
git checkout new-branch
git cherry-pick <C sha1>
这使得回购用了我需要的分支。
答案 1 :(得分:0)
C A--D
/ /
A*--D H--A--B--C
/ \
H--A--B--C A--C
(1) (2)
因为(1)
是等效的(2)
,你只能git checkout <commit sha1 of A*> -b your-new-branch