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

Git mergetool and gitk completion, performance


A few observations about using git via zsh.

It seems that git mergetool completes all files.  It would be nice
if it completed only unmerged files.  It also doesn't know about
--prompt and -y/--no-prompt options.

Also, there doesn't seem to be completion for gitk.  That would be
nice as well.  Apparently it accepts the same options as git
rev-list.  However, it seems that git rev-list completion is not
quite correct: git rev-list --<tab> displays options such as
--color and --relative= that don't seem to be valid options.

And the final observation is performance.  Generating completions
for some commands takes quite a bit of time.  For example, git diff
-<tab> takes about 5s and git log <tab> about 3s in one repository.
That's on a pretty fast machine but in Windows/Cygwin which
certainly affects things but it still shouldn't take that long.
Repository size seems to affect this quite a bit, which makes me
wonder if the completion code blindly runs git ls-files or
something similar, which lists files recursively.  If that is the
case, maybe one could use git ls-tree instead?  I'm not that
experienced with git so I'm just rambling here.

I'm currently using _git from CVS with zsh 4.3.4.


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