【发布时间】:2014-10-23 19:07:44
【问题描述】:
所以我有一个复杂的本地分支结构:我的主要工作本地分支,以及其他两个分支。我希望在我的分支中对 master 进行新的更改。将它传播到我所有分支机构的最佳方法是什么?变基可能吗?
A---E---M master
\
F---G---H local_branch_main
|\
| I---J local_subbranch_1
\K---L local_subbranch_2
理想情况下,我只想移动所有分支以引用新的主提交(没有冲突):
A---E---M master
\
F---G---H local_branch_main
|\
| I---J local_subbranch_1
\K---L local_subbranch_2
【问题讨论】:
-
在不知道您的分支更新策略是什么或有多少开发人员拥有这些分支的本地副本的情况下,甚至无法猜测。
-
@AndrewC:这都是本地的,除了提交 M。但我可以让每个人都接受我提出的任何历史记录。
-
@Tonio,这看起来很有希望,但我收到以下错误:致命:没有这样的分支:* 错误:无法应用 C...
-
在这种情况下,只需从 main 和 rebase 开始,然后执行两个子分支。
git rebase --onto SHA -
如果我这样做,我会得到指向旧的非重新定位提交的子分支,如 Tonio 建议的链接中所示。