Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

Re: Slowness issue with git completion



On Tue, Apr 26, 2011 at 20:43, Frank Terbeck <ft@xxxxxxxxxxxxxxxxxxx> wrote:
> Felipe Contreras wrote:
>> It's very easy to reproduce:
>> % git clone git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git
>> linux
>> % cd linux
>> % git log v<tab>
>>
>> It will take a looong time to figure out anything, specially if not
>> cached. I think I recall investigating the issue and finding that it's
>> looking for *all* the files in the git repo.
>
> Well yes. This is a known issue.
>
> I'm fairly sure that this is due to _multi_parts, which probably doesn't
> scale for jobs like that.  I once gave rewriting all that a shot and
> ended up with a number of helpers for each "type" of file etc. (like
> modified or ignored files).  While they were significantly quicker

How did you rewrite it?  I tried implementing it with
*(e:__git_cached:) (or similar), but that was, in my implementation, a
lot slower.  And this wasn’t even on Cygwin, where the forking makes
it even slower.



Messages sorted by: Reverse Date, Date, Thread, Author