Git命令行速度非常慢

Git命令行速度非常慢,git,shell,terminal,conemu,cmder,Git,Shell,Terminal,Conemu,Cmder,我试了这个问题的所有方法 但是没有运气。当我卸载并重新安装时,它可以正常工作约1小时,然后又变慢了。如果我使用git\u TRACE=1运行git,我会得到以下结果: 09:25:14.452494 git.c:371 trace: built-in: git 'status' 09:25:14.671494 run-command.c:369 trace: run_command: 'status' '--porcelain' 09:25:14.812

我试了这个问题的所有方法

但是没有运气。当我卸载并重新安装时,它可以正常工作约1小时,然后又变慢了。如果我使用
git\u TRACE=1运行git,我会得到以下结果:

09:25:14.452494 git.c:371               trace: built-in: git 'status'
09:25:14.671494 run-command.c:369       trace: run_command: 'status' '--porcelain'
09:25:14.812494 git.c:371               trace: built-in: git 'status' '--porcelain'
09:25:14.911494 run-command.c:369       trace: run_command: 'status' '--porcelain'
09:25:15.052494 git.c:371               trace: built-in: git 'status' '--porcelain'
09:25:15.111494 run-command.c:369       trace: run_command: 'status' '--porcelain'
09:25:15.259494 git.c:371               trace: built-in: git 'status' '--porcelain'
09:25:15.351494 run-command.c:369       trace: run_command: 'status' '--porcelain'
09:25:15.488494 git.c:371               trace: built-in: git 'status' '--porcelain'
09:25:15.788494 run-command.c:369       trace: run_command: 'status' '--porcelain'
09:25:15.937494 git.c:371               trace: built-in: git 'status' '--porcelain'
09:25:16.066494 run-command.c:369       trace: run_command: 'status' '--porcelain'
09:25:16.224494 git.c:371               trace: built-in: git 'status' '--porcelain'
09:25:16.337494 run-command.c:369       trace: run_command: 'status' '--porcelain'
09:25:16.492494 git.c:371               trace: built-in: git 'status' '--porcelain'
09:25:16.607494 run-command.c:369       trace: run_command: 'status' '--porcelain'
09:25:16.756494 git.c:371               trace: built-in: git 'status' '--porcelain'
09:25:16.902494 run-command.c:369       trace: run_command: 'status' '--porcelain'
09:25:17.050494 git.c:371               trace: built-in: git 'status' '--porcelain'
09:25:17.225494 run-command.c:369       trace: run_command: 'status' '--porcelain'
09:25:17.375494 git.c:371               trace: built-in: git 'status' '--porcelain'
09:25:17.518494 run-command.c:369       trace: run_command: 'status' '--porcelain'
09:25:17.676494 git.c:371               trace: built-in: git 'status' '--porcelain'
09:25:17.834494 run-command.c:369       trace: run_command: 'status' '--porcelain'
09:25:17.997494 git.c:371               trace: built-in: git 'status' '--porcelain'
09:25:18.203494 run-command.c:369       trace: run_command: 'status' '--porcelain'
09:25:18.348494 git.c:371               trace: built-in: git 'status' '--porcelain'
09:25:18.449494 run-command.c:369       trace: run_command: 'status' '--porcelain'
09:25:18.593494 git.c:371               trace: built-in: git 'status' '--porcelain'
09:25:18.693494 run-command.c:369       trace: run_command: 'status' '--porcelain'
09:25:18.834494 git.c:371               trace: built-in: git 'status' '--porcelain'
09:25:18.941494 run-command.c:369       trace: run_command: 'status' '--porcelain'
09:25:19.083494 git.c:371               trace: built-in: git 'status' '--porcelain'
09:25:19.227494 run-command.c:369       trace: run_command: 'status' '--porcelain'
09:25:19.369494 git.c:371               trace: built-in: git 'status' '--porcelain'
09:25:19.496494 run-command.c:369       trace: run_command: 'status' '--porcelain'
09:25:19.640494 git.c:371               trace: built-in: git 'status' '--porcelain'
09:25:19.745494 run-command.c:369       trace: run_command: 'status' '--porcelain'
09:25:19.887494 git.c:371               trace: built-in: git 'status' '--porcelain'
09:25:19.996494 run-command.c:369       trace: run_command: 'status' '--porcelain'
09:25:20.141494 git.c:371               trace: built-in: git 'status' '--porcelain'
09:25:20.397494 run-command.c:369       trace: run_command: 'status' '--porcelain'
09:25:20.529494 git.c:371               trace: built-in: git 'status' '--porcelain'
09:25:20.652494 run-command.c:369       trace: run_command: 'status' '--porcelain'
09:25:20.785494 git.c:371               trace: built-in: git 'status' '--porcelain'
09:25:20.888494 run-command.c:369       trace: run_command: 'status' '--porcelain'
09:25:21.019494 git.c:371               trace: built-in: git 'status' '--porcelain'
09:25:21.113494 run-command.c:369       trace: run_command: 'status' '--porcelain'
09:25:21.247494 git.c:371               trace: built-in: git 'status' '--porcelain'
09:25:21.356494 run-command.c:369       trace: run_command: 'status' '--porcelain'
09:25:21.489494 git.c:371               trace: built-in: git 'status' '--porcelain'
09:25:21.619494 run-command.c:369       trace: run_command: 'status' '--porcelain'
09:25:21.752494 git.c:371               trace: built-in: git 'status' '--porcelain'
09:25:21.898494 run-command.c:369       trace: run_command: 'status' '--porcelain'
09:25:22.030494 git.c:371               trace: built-in: git 'status' '--porcelain'
09:25:22.122494 run-command.c:369       trace: run_command: 'status' '--porcelain'
09:25:22.255494 git.c:371               trace: built-in: git 'status' '--porcelain'
09:25:22.351494 run-command.c:369       trace: run_command: 'status' '--porcelain'
09:25:22.490494 git.c:371               trace: built-in: git 'status' '--porcelain'
09:25:22.582494 run-command.c:369       trace: run_command: 'status' '--porcelain'
09:25:22.720494 git.c:371               trace: built-in: git 'status' '--porcelain'
09:25:22.826494 run-command.c:369       trace: run_command: 'status' '--porcelain'
09:25:22.958494 git.c:371               trace: built-in: git 'status' '--porcelain'
09:25:23.049494 run-command.c:369       trace: run_command: 'status' '--porcelain'
09:25:23.199494 git.c:371               trace: built-in: git 'status' '--porcelain'
09:25:23.298494 run-command.c:369       trace: run_command: 'status' '--porcelain'
09:25:23.444494 git.c:371               trace: built-in: git 'status' '--porcelain'
09:25:23.606494 run-command.c:369       trace: run_command: 'status' '--porcelain'
09:25:23.740494 git.c:371               trace: built-in: git 'status' '--porcelain'
09:25:23.856494 run-command.c:369       trace: run_command: 'status' '--porcelain'
09:25:23.985494 git.c:371               trace: built-in: git 'status' '--porcelain'
09:25:24.076494 run-command.c:369       trace: run_command: 'status' '--porcelain'
09:25:24.211494 git.c:371               trace: built-in: git 'status' '--porcelain'
然后是通常的输出。
这在我看来并不正常,因为通常情况下,状态检查只有一条跟踪线。我在
cmder
中使用它,因为它在更新分支详细信息之后运行git命令,所以需要很长时间。你知道是什么原因造成的吗?如果没有任何方法可以在cmder窗口上禁用git详细信息

我的git也非常慢。当我在命令提示符下键入
git
时,花了60多秒才完成。
卸载后,问题消失了。

我的git速度也非常慢。当我在命令提示符下键入
git
时,花了60多秒才完成。
卸载后,问题消失了。

试试
git-gc


这应该能解决你的问题。为我工作过

试试
git-gc


这应该能解决你的问题。为我工作过

不要使用cmder/clink?对于clink prompt函数来说,这似乎是一个问题,为什么它会在每个提示符下生成几十个“status”命令。@Maximus没有,我尝试过在任何shell上生成这么多命令。我问如果这个问题不能得到正确解决(即停止git启动这么多状态命令),我是否可以在cmder中的每个提示符上禁用git。“shell”是cmd、bash或您正在使用的东西。ConEmu是一个终端。cmder是ConEmu和第三方软件(如clink)的捆绑产品。所以,禁用clink,或者使用bare ConEmu获得“clean”提示。谢谢,我禁用了clink。不是最好的解决方案,但git速度非常慢,无法在每次提示后运行它。不使用cmder/clink吗?对于clink prompt函数来说,这似乎是一个问题,为什么它会在每个提示符下生成几十个“status”命令。@Maximus没有,我尝试过在任何shell上生成这么多命令。我问如果这个问题不能得到正确解决(即停止git启动这么多状态命令),我是否可以在cmder中的每个提示符上禁用git。“shell”是cmd、bash或您正在使用的东西。ConEmu是一个终端。cmder是ConEmu和第三方软件(如clink)的捆绑产品。所以,禁用clink,或者使用bare ConEmu获得“clean”提示。谢谢,我禁用了clink。不是最好的解决方案,但git速度非常慢,不能在每次提示后都运行它