Probably git plugin fault, removing solves the problem. What can be done?
Maybe we can somehow run such processes in the background, and when finished we generate a status file somewhere in /run for each repo path we are working on. We could then maybe make zsh update the prompt only if the status file is generated for the current repo.
Anyway, subsequent runs will be faster due to filesystem caching, so only the first run will need this trick.
+1 for this feature? The git plugin is really slow and its work should really be done in the background.
The git plugin is also painfully slow when tabcompleting paths