unavailable - Git bash错误:无法fork子进程:没有可用的终端(-1)




git bash dll rebasing may be required (14)

我之前同时运行了多达8个git bash终端。

目前我只有2个。

我之前没有看过这个错误,我不明白是什么导致它。

任何帮助,将不胜感激!

附图:


为了让生活更轻松(这个问题经常发生)在主目录中创建一个名为 fixbash.bat 的文件并粘贴它:

taskkill /F /IM ssh-agent.exe

出现问题时,只需打开 cmd 并键入 fixbash.bat 即可解决问题。

要么

如果您不想创建脚本,只需将taskkill命令粘贴到 cmd 即可。


事实上似乎是从git bash发起的进程的一个问题,就像@mamacdon在他对@Scott Newson的最佳答案的评论中所建议的那样。

对我来说,如果我使用 code 从bash启动vscode,并且如果这个vscode实例在原始bash仍在运行时启动了集成的git终端,则会出现问题。

无论该终端是在开始时还是以后启动都没关系,只要它是在原始bash仍在运行的时候。

在集成终端打开之前关闭bash时没有发生。 没有通过窗口区分 exit 和关闭bash。 没有发生另一个旧的bash窗口仍在运行。

解决这个问题的方法是让我用 exit 或“杀死终端”关闭vscode中的终端(注意不要将其与“关闭窗格”混合),或者当然,关闭vscode本身。

如果你收到此错误,请尝试记住从bash启动的内容并将其删除。 如果其他答案对你有用,那可能就是这些是你的bash发布的东西,或者你从bash发起的进程启动的东西,他们不知何故得到了原始bash的孩子。


在我的情况下,我有视觉工作室代码运行,关闭它解决了问题。


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


在系统bash类型中:

ps

杀死任何不好看的过程:

kill -9 <ID>

为我工作。


如果您使用的是Visual Studio Code而无法找到ssh-agent.exe或者无法对其进行任务,那么在打开Git Bash之后就会出现该错误,只需转到您的VSCode打开终端>新终端并按下trashbin图标(杀死终端)。 例如(1:bash)如果你有多个,那么就把它们全部杀掉,你应该很好。


当您退出git bash而不终止现有进程时会发生这种情况。 试试杀死你从git bash开始的那些进程。 我在git bash中运行节点进程,所以我杀了所有节点进程杀死的步骤

  1. 打开任务管理器
  2. 转到详细信息选项卡
  3. 寻找node.exe(你找工作流程)
  4. 杀死每个节点进程
  5. 再次打开Git Bash

当我在不使用exit的情况下杀死我的git bash控制台时,我在git bash中看到了windows上的问题。 我发现从Windows任务管理器中杀死ssh-agent.exe任务来解决问题。


我解决了这个问题:

  1. 关闭Git Bash窗口。
  2. 打开任务管理器。
  3. 找到'Git for Windows'流程。
  4. 杀死它。
  5. 打开Git Bash。

现在应该没问题。


我试图在任务管理器中杀死我所有的git终端解决了这个问题。 这对我也有用。 祝好运。


打开任务管理器,找到bash.exe进程并将其杀死。 在我的情况下帮助。


打开你的任务管理器,搜索“sh”procces并杀死他们。 祝好运


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


重启你的机器。

(其他答案对我不起作用。(我没有尝试重新安装。重启可能更快。))





git-bash