[SoC] Rebase feature - Introduction

Andrei Vermel avermel at mail.ru
Tue May 27 14:35:10 CDT 2008



-----Original Message-----
> For example, let's consider this situation:
>
> o  9: R1
> |
> | o    8: L4
> | |\
> | | o  7: E3
> | | |
> | | o  6: E2
> | | |
> | o |  5: L3
> | |\|
> | | o  4: E1
> | | |
> | o |  3: L2
> | |/
> | o  2: L1
> |/
> o  1: C2
> |
> o  0: C1
> What should happen if I tried to rebase 5 on 9? The parents of 5' should
> be 9 and what? 3 or 4? I think none of them, that's why the rebasing of
> a merge revision shouldn't be allowed in this case.
> What do you think? Is there something wrong?

I think rebasing a single merge changeset 5 means applying to 9 those lines
of 5 that are neither in 3 or 4. Also we need to make sure that none of
these lines are merge edits on changes in 3 or 4. Overall, this sounds
pretty useless, since a merge changeset in most cases is only supposed to
contain changes from 3 and 4 as well as merge edits in these.

Rebasing a merge changeset is probably only worth the trouble if it gets 
rebased together with it's ancestors.

Andrei



More information about the Mercurial-devel mailing list