From: Junio C Hamano Date: Wed, 28 Jan 2009 08:22:01 GMT Subject: Re: Bad objects error since upgrading GitHub servers to 1.6.1 Message-ID: <7vbptrvo0m.fsf@gitster.siamese.dyndns.org> In-Reply-To: <7vfxj3vos2.fsf@gitster.siamese.dyndns.org> Junio C Hamano writes: > Jeff King writes: > >> But in other cases, it silently gives you the wrong answer. For >> example, consider a history like: >> >> C--D >> / >> A--B >> \ >> E--F >> >> now let's suppose I have everything except 'E'. If I ask for >> >> git rev-list F..D >> >> then it will not realize that A and B are uninteresting, and I will get >> A-B-C-D. I think it is much better for git to complain loudly that it >> could not compute the correct answer. > > Fair enough. I think we can resurrect the conditional and the traversal > option revs->ignore_missing_negative only for this hunk in my [2/2] patch > to support that use case. > ... Nah, I take that back. Even the original code does not consider this case an error. If you really want that, the revision machinery needs major surgery, as I already noted that the design of mark_parents_uninteresting() wants to treat a missing uninteresting commit as a non-error event.