Re: [PATCH] bisect: error out when given any good rev that is not an ancestor of the bad rev

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Le mardi 1 juillet 2008, Junio C Hamano a écrit :
> Christian Couder <chriscool@xxxxxxxxxxxxx> writes:
> > 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.
>
> Yeah, sorry about the confusion earlier.
>
> But I do not think forbidding forked topology very early in bisection
> process is a very good idea.  The user would be at loss when told:
>
> 	echo >&2 "Maybe you mistake good and bad revs?"

Yeah, perhaps we should then check that it can be a mistake by testing if 
bad is an ancestor of good. If bad is indeed an ancestor of good, it's 
probably a mistake and we may even ask if the user wants good and bad to be 
swaped (assuming he gave only one good rev of course).

> Aside from the "test a trial merge" idea I floated in the other message,
> when we detect such a fork, perhaps we can suggest testing the merge base
> version (B in your picture) first?  We would immediately know as the user
> would say "B is bad" if the topology is problematic.

Yes this can be a good idea, if the user gave only one good rev. It maybe 
more tricky if he gave many good revs, but in this case we may perhaps drop 
siblings good revs as long as one good rev is an ancestor of the bad rev.

> Then, we can suggest the user that breakage at D may not be a regression
> but a longstanding bug that was recently fixed somewhere between B and F.
>
> The user then can decide to bisect to find the fix (so that it can be
> cherry picked on top of D) or merge F into D to propagate the fix forward
> if it is not important to find out which exact commit fixed the issue.
>
> Hmm?

Yeah that might be a plan.

Another option is to introduce a switch to "git bisect start", 
perhaps --strict, to please people who always want to use good revs that 
are ancestor of the bad revs, so they get a nice error when this is not the 
case.

Thanks,
Christian.
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux