【发布时间】:2015-08-26 10:49:00
【问题描述】:
有一个项目只使用主分支和标记来管理版本。
我必须为特定版本制作一个修补程序并将其集成到主分支中。
问题:主分支已经包含我不想包含在修补程序中的其他提交。
Current state:
(TAG: v3.2.0)
|
... ---C1---C2---C3---C4---C5---C6 (master)
\
\---C7---C8 (fix_bug_branch)
|
(TAG: v3.2.1)
Desired state:
(TAG: v3.2.0)
|
... ---C1---C2---C3---C7---C8---C4---C5---C6 (master)
|
(TAG: v3.2.1)
是否可以重新设置或合并这样的场景?怎么样?
【问题讨论】:
-
历史必须是线性的吗?如果没有,您可以继续并将 fix_bug_branch 合并到 master 中。尽管最初被标记在不同的分支上,但合并将使每个标记再次成为 master 的祖先。
标签: git git-branch git-merge git-rebase