[Patch 1 of 2] add support for multiple possible bisect results

Bernhard Leiner mailinglists.bleiner at gmail.com
Sat Aug 2 08:53:09 CDT 2008


# HG changeset patch
# User Bernhard Leiner <bleiner at gmail.com>
# Date 1217682662 -7200
# Node ID 81aa4924ed9d7ceb4a97c2a7a2d27ac40c18b856
# Parent  e726c476ee455fda5433a629fe5e96d6d100b450

The _real_ reason for both issue issue1228 and issue1182 is that bisect can not
handle cases where there are multiple possibilites for the result.

Example (from issue1228):
rev 0 -> good
rev 1 -> skipped
rev 2 -> skipped
rev 3 -> skipped
rev 4 -> bad

Which one is the first bad revision? It might 1, 2, 3 or 4!

This patch adds support for detecting and printing multiple bisect results.
(by the way: this is also the way such bisects are handles by git)


Note that this patch does not only fix the reported Assertion Error but also
the problem of a non converging bisect (as reported in msg6313 of issue1182).
This can easily reproduced by the following steps:

hg init
for i in `seq 3`; do echo $i > $i; hg add $i; hg ci -m$i; done
hg bisect -b 2
hg bisect -g 0
hg bisect -s



More information about the Mercurial-devel mailing list