New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Powerline/zsh extremely slow in git repos with large file counts #1543

Closed
ttrmw opened this Issue Mar 14, 2016 · 5 comments

Comments

Projects
None yet
2 participants
@ttrmw

ttrmw commented Mar 14, 2016

Hey,

I'm finding zsh with powerline takes a long time to finish commands such as ls, cd in git repos with high file counts.. Is this a known issue?

For example, the following project:

https://github.com/shakacode/react-webpack-rails-tutorial

Once npm install is run on this, the directory and its subdirectories will contain around 32000 files. The vast majority are .gitignored, but the presence of so many files in a git repo seems to be the deciding factor for the massive slow downs I'm seeing: Powerline/zsh are really speedy in the root directory, and in repos with a low file count. In rbenv's gem installation paths, eg $HOME/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/railties-4.2.2, or just generally under $/.rbenv (190~k files) things slow down heavily, but in a normal rails project everything is fine.

In the above project, the client/node_modules directory is the main offender, containing 29000 of the 32000 files. Note however that the problem is still exhibited in subdirectories outside of node_modules, eg :/app/models.

@ttrmw

This comment has been minimized.

Show comment
Hide comment
@ttrmw

ttrmw Mar 14, 2016

Note that running zsh without powerline fixes this. Untested with bash/powerline but can do so if it'd be helpful!

Also note that .rbenv is also a git repo, if that wasn't clear in the above.

ttrmw commented Mar 14, 2016

Note that running zsh without powerline fixes this. Untested with bash/powerline but can do so if it'd be helpful!

Also note that .rbenv is also a git repo, if that wasn't clear in the above.

@ZyX-I

This comment has been minimized.

Show comment
Hide comment
@ZyX-I

ZyX-I Mar 14, 2016

Contributor

You need to run the powerline daemon, otherwise it will be slow even without any repositories. Though not all people consider that slow.

Contributor

ZyX-I commented Mar 14, 2016

You need to run the powerline daemon, otherwise it will be slow even without any repositories. Though not all people consider that slow.

@ZyX-I ZyX-I closed this Mar 14, 2016

@ttrmw

This comment has been minimized.

Show comment
Hide comment
@ttrmw

ttrmw Mar 14, 2016

That fixed it utterly.

I couldn't find any mention of this outside of the FAQ section in the docs - would it be worth adding to the installation instructions? Happy to PR if it would be helpful!

ttrmw commented Mar 14, 2016

That fixed it utterly.

I couldn't find any mention of this outside of the FAQ section in the docs - would it be worth adding to the installation instructions? Happy to PR if it would be helpful!

@ZyX-I

This comment has been minimized.

Show comment
Hide comment
@ZyX-I

ZyX-I Mar 14, 2016

Contributor

This is in docs/source/usage/shell-prompts.rst, also tips-and-tricks.rst. It should not be in the installation instructions, they do not contain even configuration necessary to use shell bindings.

Contributor

ZyX-I commented Mar 14, 2016

This is in docs/source/usage/shell-prompts.rst, also tips-and-tricks.rst. It should not be in the installation instructions, they do not contain even configuration necessary to use shell bindings.

@ttrmw

This comment has been minimized.

Show comment
Hide comment
@ttrmw

ttrmw Mar 14, 2016

True, my mistake - been a while since I followed the docs. Fair to say I must have skipped over that bit. Thank you! 😁

ttrmw commented Mar 14, 2016

True, my mistake - been a while since I followed the docs. Fair to say I must have skipped over that bit. Thank you! 😁

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment