ohmybash / oh-my-bash

A delightful community-driven framework for managing your bash configuration, and an auto-update tool so that makes it easy to keep up with the latest updates from the community.
https://ohmybash.github.io
MIT License
5.59k stars 628 forks source link

Git plugin lags bash prompt for large repositories. #6

Open CourteousCoder opened 6 years ago

CourteousCoder commented 6 years ago

This problem is identical to a problem in oh-my-zsh, which has a few proposed solutions.

Synopsis

When the current working directory is in a large git repository, the bash prompt takes around 5 seconds (in my case) to load.

Steps to reproduce

  1. Run git clone on a large repository.
  2. Run cd into that repository.
  3. Wait several seconds.
  4. Run any command.
  5. Wait several seconds.
  6. See a bash prompt
  7. Repeat steps 4, 5, and 6, any number of times.

Remarks

This problem occurs in both Ubuntu and Cygwin.

In oh-my-zsh, but not oh-my-bash, I was able to speed it up by doing the following:

  1. Run cd into the large repository.
  2. Run git config --edit
  3. Add the following lines and save.
    [oh-my-zsh]
        hide-status = 1
        hide-dirty = 1

I think it's an elegant solution because it is on a per-repository basis; however, this does not work oh-my-bash, not even if I change [oh-my-zsh] to [oh-my-bash].

sanfusu commented 5 years ago

You can Run git config --edit and add the following lines and save

[bash-it]
    hide-status = 1

This config works for the most theme!

Kreyren commented 4 years ago

Any suggestion to fix this? Should we make a logic to add suggestion by @sanfusu ?

nntoan commented 3 years ago

I'm looking into this, can you guys give me an example for a large repository?

Cheers.