Jeff King <peff@xxxxxxxx> writes: > On Wed, Mar 20, 2013 at 10:15:39AM -0700, Junio C Hamano wrote: > >> Jeff King <peff@xxxxxxxx> writes: >> >> > So maybe just run "git status >/dev/null"? >> >> In the background? How often would it run? I do not think a single >> lockfile solves anything. It may prevent simultaneous runs of two >> such "prime the well" processes, but the same user may be working in >> two separate repositories. > > Yes, in the background (he invokes __git_recursive_stat already in the > background). I'd think you would want to run it whenever you enter a > repository. > >> I do not see anything that prevents it from running in the same >> repository over and over again, either. "prompt" is a bad place to >> do this kind of thing. > > Yeah, I did not look closely at that. The commit message claims "When > entering a git working dir", but the implementation runs it on each > prompt invocation, which is awful. I think you'd want to check to use > rev-parse to see if you have changed into a new git repo, and only run > it once then. I think it would actually be a somewhat interesting feature if it interacted with GIT_PS1_SHOW*. If you use these settings (I personally use SHOWDIRTYSTATE but not SHOWUNTRACKEDFILES), the prompt hangs while __git_ps1 runs git-status. It should be possible to run a git-status process in the background when entering a repository, and displaying some marker ('??' maybe) in the prompt instead of the dirty-state info until git-status has finished. That way the user doesn't have his shell blocked by cding to a big repo. -- Thomas Rast trast@{inf,student}.ethz.ch -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html