Duy Nguyen [off-list ref] writes:
On Thu, Aug 13, 2015 at 4:57 AM, David Turner [off-list ref]
wrote:
quoted
Instead of a linear search over common_list to check whether
a path is common, use a trie. The trie search operates on
path prefixes, and handles excludes.
Just be careful that the given key from git_path is not normalized. I
think you assume it is in the code, but I haven't read carefully. We
could of course optimize for the good case: assume normalized and
search, then fall back to explicit normalizing and search again.
What does it mean for a key to be normalized? Do you mean normalized in
terms of upper/lowercase on case-insensitive filesystems? If so, I think the
assumption here is that this will be called with paths generated by git,
which will always use the lowercase path.