-
-
Notifications
You must be signed in to change notification settings - Fork 2.2k
Description
> fish --version
fish, version 3.1.0
> uname -a
FreeBSD fbsd-head.lauralan.noip.me 13.0-CURRENT FreeBSD 13.0-CURRENT #58 r358258M: Sun Feb 23 14:50:10 MST 2020 somers@fbsd-head.lauralan.noip.me:/usr/obj/usr/home/somers/freebsd/base/head/amd64.amd64/sys/GENERIC amd64
> echo $TERM
xterm-256color
Fish 3.1.0 "helpfully" runs svnversion and svn status in order to change the prompt, whenever it detects that the pwd is part of a subversion working copy. That feature is probably handy when working in small repositories. But in a large repository, those commands take far too much time, especially so if the pwd lies on a remote file system. For example, on my system I have /usr/home mounted over NFS. In my FreeBSD source tree, svnversion and svn status take a combined 42 seconds to run. And fish runs them after every single command. That makes the shell entirely unusable.
I notice that fish runs git branch in git repositories. That's fine; git branch is fast. But I believe that no command that traverses the entire tree should be run by default, just to change the prompt.