Re: Could this be done simpler?
- From
Christian Couder <chriscool@tuxfamily.org>
- Date
- Jun 25, 2009, 22:02 UTC
- Message-ID
- <200906260002.40531.chriscool@tuxfamily.org>
- In-Reply-To
- <7veit9m8cs.fsf@alter.siamese.dyndns.org>
On Thursday 25 June 2009, Junio C Hamano wrote:
Show 27 quoted lines
> Side note. > > People sometimes say, and I am certain I agreed to them on more than one > occasions, that Octopus hurt bisectability and does not have much value > in real life. I've always thought this bisectability issue was a > downside of Octopus merges, but now I think about it, perhaps "git > bisect" can be taught to dynamically decompose an Octopus merges into a > sequence of two-head virtual merges while bisecting. We strongly > discourage and do not allow conflicting Octopus merges, so when you need > to bisect a history with an Octopus that looks like this: > > ---o---A > \ > ---o---B---M---o > / > ---o---C > > it should be able to mechanically decompose it, without conflicts, into > > > ---o---A > \ > ---o---B---M1--M2--o > / > ---o---C > > where the tree of M and the tree of M2 are identical.
If someone creates a "git decompose-octopus <commit>" command then you only need to do "git replace M M2" after that and you can bisect as usual. (Of course after that you can remove the replacement with "git replace -d M".)
Best regards, Christian.