Hi, On Wed, 13 Jan 2010, Junio C Hamano wrote: > Johannes Schindelin <Johannes.Schindelin@xxxxxx> writes: > > >> I wondered why it doesn't hook into interpret_branch_name(), and > >> instead adds itself to the static substitute_branch_name(); it > >> forbids the use of the syntax from by callers of strbuf_branchname(). > > > > I _think_ it was to allow something like > > > > git log -g @{u} > > > > but frankly, this is so long ago, I do not remember, I reconstructed this > > reasoning as being the most likely. > > That is not the question I was asking. > > If you compare substitute_branch_name() and interpret_branch_name() before > your patch, you will notice that they are _meant_ to do the same thing, > with different external API, only because many callers in sha1_name.c do > not use strbuf to hold their names. The primary API is the latter (which > is extern), and the former (which is static) is merely a helping wrapper > that is internal to sha1_name.c So you meant to say that substitute_branch_name() calls interpret_branch_name(), so the change should be in the latter. (This is supposed to be the summary of your 4 paragraphs.) I have no problems with that, except that I do not have the time to do it myself. Ciao, Dscho -- 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