自从我在计算机上安装GitBash后,提示一直没有响应。我想我已将罪魁祸首降低到命令__git_ps1
。
此命令的时序如下,以及输出:
$ time __git_ps1
+ __git_ps1
+ local pcmode=no
+ local detached=no
+ local 'ps1pc_start=\u@\h:\w '
+ local 'ps1pc_end=\$ '
+ local 'printf_format= (%s)'
+ case "$#" in
+ printf_format=' (%s)'
+ local ps1_expanded=yes
+ '[' -z '' ']'
+ '[' -z '3.1.20(4)-release' ']'
+ shopt -q promptvars
+ local repo_info rev_parse_exit_code
++ git rev-parse --git-dir --is-inside-git-dir --is-bare-repository --is-inside-
work-tree --short HEAD
+ repo_info=
+ rev_parse_exit_code=128
+ '[' -z '' ']'
+ '[' no = yes ']'
+ return
real 0m0.541s
user 0m0.000s
sys 0m0.358s
$ PS1等于\[\033]0;$MSYSTEM:${PWD//[^[:ascii:]]/?}\007\]\n\[\033[32m\]\u@\h \[\033[33m\]\w$(__git_ps1)\[\033[0m\]\n$
我的任何其他计算机上也没有此问题。我已经虚拟化了Windows 7 8.1和10,他们都没有这个问题。对此问题的任何见解都会有所帮助
我的电脑上的 time git rev-parse --git-dir --is-inside-git-dir --is-bare-repository --is-inside-work-tree --short HEAD
:
real 0m0.364s
user 0m0.000s
sys 0m0.186s
VM中的上述命令:
real 0m0.031s
user 0m0.000s
sys 0m0.015s
答案 0 :(得分:0)
检查您的Windows安装是否有任何进程跟踪器。 它们是公司安装的服务/代理,用于跟踪每个流程启动的合规性原因。示例:Altiris。 与您的合规性小组合作,获取git / bash / cygwin的排除等... 获取排除项或更改这些进程的记录方式(asych与同步)。 祝贵公司使用这些产品,祝你好运。