我曾经有8个git bash终端同时运行。

目前我只有2个。

我以前没有见过这个错误,我不知道是什么原因造成的。

任何帮助都将不胜感激!

图片附件:


当前回答

请在“任务管理器”窗口中找到ssh-agent进程。 停止或杀死ssh-agent进程后,错误将消失。

其他回答

为了简化工作(这种问题经常发生),在主目录下创建一个名为fixbash.bat的文件,并粘贴如下:

taskkill /f /IM ssh-agent.exe

当问题发生时,只需打开cmd并键入fixbash.bat来修复问题。

Or

如果你不想创建一个脚本,只需将taskkill命令粘贴到你的cmd。

在windows git的最新版本中,任务管理器中要终止的进程是“GitExtensions.exe”。杀死了它,终端重新启动没有问题。

Windows 10对我来说很管用:

1)以管理员身份打开CMD

2)类型:

taskkill /f /im git-bash.exe


3)如果有一个错误:进程“ssh-agent.exe”没有找到。然后:

类型:

tasklist

4)用“bash”或“git”这样的词查找并杀死每个进程(这可能是一个危险的解决方案,但一旦你找到了进程名,下次你就会知道了。)

taskkill /f /im ***.exe

在我的例子中,问题是[git_install_dir]/etc/nsswitch.conf文件

我之前遵循了这里给出的说明: https://cygwin.com/faq.html faq.using.startup-slow。 但这反而导致了“无法分叉”错误。 我错误的nsswitch.conf文件是:

passwd: files
group: files

所以我恢复了文件,问题解决了。现在我的[git_install_dir]/etc/nsswitch.conf是:

passwd: files db
group: files # db
db_enum: cache builtin
db_home: env windows cygwin desc
db_shell: env windows # cygwin desc
db_gecos: env # cygwin desc

在我的情况下,我需要杀死Git bash在Windows。 因此打开命令提示符并运行下面的命令

$ tasklist

它将列出所有正在运行的任务,然后需要使用以下命令杀死bash.exe任务

$ taskkill /F /IM bash.exe