On Fri, 20 Jun 2008, Lea Wiemann wrote: > Daniel Barkalow wrote: > > Actually, I think it's the reverse: without --stdin, name-rev can do a first > > pass that lets it eliminate a lot of data from consideration; with --stdin, > > it doesn't know if an item it hasn't seen is going to need some data, and so > > it's conservative and doesn't eliminate anything, > > Are you sure that's the case? time git-name-rev --stdin < /dev/null gives the > same high startup time without looking up anything. Ah, okay. There's a startup pass that goes through all of the refs (tags in particular), and does stuff with them, but only if they aren't filtered out. > Anyways, it would be great if someone could try to fix that, since a 6-second > startup time on a repository like linux-2.6 makes the --stdin option unusable > for applications like gitweb (for which it would actually be quite useful to > reduce the number of forks). It might be possible to collect all of the input, set up the filter, and do the (now cheaper) initial pass, but I don't think that would offer any real advantage over just collecting them in the caller and calling name-rev with a long command line. -Daniel *This .sig left intentionally blank* -- 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