From: Christian Couder Date: Mon, 30 Jun 2008 23:46:09 GMT Subject: Re: [PATCH] bisect: error out when given any good rev that is not an ancestor of the bad rev Message-ID: <200807010146.09206.chriscool@tuxfamily.org> In-Reply-To: <7vprpyts7j.fsf@gitster.siamese.dyndns.org> Le mardi 1 juillet 2008, Junio C Hamano a écrit : > Christian Couder writes: > > Le mardi 1 juillet 2008, Junio C Hamano a écrit : > >> Christian Couder writes: > >> > Before this patch "git bisect" doesn't really work when it is given > >> > some good revs that are siblings of the bad rev. > >> > > >> > For example if there is the following history: > >> > > >> > A-B-C-D > >> > \E-F > >> > > >> > and we launch "git bisect start D F" then only C and D will be > >> > considered as possible first bad commit. > > > > I am assuming the first bad commit in the graph is A and it is fixed by > > F. > > Ah, I see your confusion here. bisect is about finding regressions. > "Older ones were good, and now there is a breakage. Who broke it?" > > If F fixed it, that is already outside the bisection's scope. The user > needs to know that by saying F is good, he is saying he knows everything > that leads to F is good. Yes, but the fact is that the user may wrongly think that F is an ancestor of D or he may not remember/know about the rule that saying "F is good" means "everything from A to F is good". That's why this patch adds a safety net by detecting end erroring out in this case. Regards, Christian.