Hi Junio, On Mon, 26 Nov 2012, Junio C Hamano wrote: > Johannes Schindelin <Johannes.Schindelin@xxxxxx> writes: > > > If you changed your stance on the patch Sverre and I sent to fix this, > > we could get a non-partial fix for this. > > This is long time ago so I may be misremembering the details, but I > thought the original patch was (ab)using object flags to mark "this was > explicitly asked for, even though some other range operation may have > marked it uninteresting". Because it predated the introduction of the > rev_cmdline_info mechanism to record what was mentioned on the command > line separately from what objects are uninteresting (i.e. object flags), > it may have been one convenient way to record this information, but it > still looked unnecessarily ugly hack to me, in that it allocated scarce > object flag bits to represent a narrow special case (iirc, only a > freestanding "A" on the command line but not "A" spelled in "B..A", or > something), making it more expensive to record other kinds of command > line information in a way consistent with the approach chosen (we do not > want to waste object flag bits in order to record "this was right hand > side tip of the symmetric difference range" and such). Good to know. I will find some time to look at rev_cmdline_info and patch my patch. > If you are calling "do not waste object flags to represent one > special case among endless number of possibilities, as it will make > it impossible to extend it" my stance, that hasn't changed. > > We added rev_cmdline_info since then so that we can tell what refs > were given from the command line in what way, and I thought that we > applied a patch from Sverre that uses it instead of the object > flags. Am I misremembering things? It does sound so familiar that I am intended to claim that you remember things correctly. Ciao, Johannes -- 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