Re: Rebasing multiple branches
- From
- Enrico Weigelt <weigelt@metux.de>
- Date
- Dec 22, 2010, 14:36 UTC
- Message-ID
- <20101222143654.GA4829@nibiru.local>
- In-Reply-To
- <4D10B44D.5090309@viscovery.net>
* Johannes Sixt <j.sixt@viscovery.net> wrote:
Show 17 quoted lines
> Am 12/21/2010 14:40, schrieb Leonid Podolny: > > B--o--o--o--o--o--o <--branch A > > / \ > > o--o--A--o--E <--master C--o--o--o--D <--branch C > > \ / > > C--o--o--o--o--o--o <--branch B > > > > I would like to rebase all three branches A, B and C onto commit E,... > > git rebase master A > git rebase master B > git merge A > git rebase -i HEAD C > > The last rebase I propose as interactive so that you can remove those > commits before D~3 that you have already rebased, because they are likely > to conflict unnecessarily, and you would --skip them anyway.
Why not this way ?
git checkout D git rebase -p -i D~3 --onto C'
(C' is the merged branch of A' and B').
So:
git checkout branch_A -b rebasing_A git rebase master # rebase old A to master git checkout branch_B -b rebasing_B git rebase master # rebase old B to master git checkout -b rebased_merge git merge rebasing_A # we're on B', merge in A' git checkout branch_C git rebase -p -i C --onto rebased_merge # set D~3..D ontop of it
cu
-- ---------------------------------------------------------------------- Enrico Weigelt, metux IT service -- http://www.metux.de/ phone: +49 36207 519931 email: weigelt@metux.de mobile: +49 151 27565287 icq: 210169427 skype: nekrad666 ---------------------------------------------------------------------- Embedded-Linux / Portierung / Opensource-QM / Verteilte Systeme ----------------------------------------------------------------------