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

目前我只有2个。

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

任何帮助都将不胜感激!

图片附件:


当前回答

在我的例子中,我在Git Bash中运行jupyter-notebook,并在没有关闭notebook的情况下关闭了终端。当我关闭所有运行的git bash终端并试图打开新终端时,这给了我一个错误:

Error: Could not fork child process: There are no available terminals (-1).

解决方案

taskkill /F /IM jupyter-notebook.exe

在那之后,我能够在git bash终端中运行命令。

其他回答

在我的情况下,我有visual studio代码运行和关闭它解决了这个问题。

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中运行jupyter-notebook,并在没有关闭notebook的情况下关闭了终端。当我关闭所有运行的git bash终端并试图打开新终端时,这给了我一个错误:

Error: Could not fork child process: There are no available terminals (-1).

解决方案

taskkill /F /IM jupyter-notebook.exe

在那之后,我能够在git bash终端中运行命令。

我用一个变通办法来解决这个问题:

关闭Git Bash窗口。 打开任务管理器。 找到“Git for Windows”进程。 杀死它。 打开Git Bash。

现在应该没问题了。