Lỗi Git bash: Không thể rẽ nhánh tiến trình con: Không có thiết bị đầu cuối khả dụng (-1)


190

Tôi đã có tới 8 git bash terminal chạy cùng lúc trước đó.

Hiện tại tôi chỉ có 2 lên.

Tôi chưa thấy lỗi này trước đây và tôi không hiểu điều gì gây ra nó.

Bất kỳ trợ giúp sẽ được đánh giá cao!

Bức tranh đã đính kèm:

nhập mô tả hình ảnh ở đây


10
giết quá trình bash làm việc cho tôi
bfranzen

35
-1 cho tất cả các câu trả lời hiện tại. Tất cả các biến thể của "chỉ cần giết thiết bị đầu cuối và bắt đầu lại". Vấn đề tiềm ẩn là gì? Tại sao tôi không thể có 100 thiết bị đầu cuối?
RJFalconer

31
Tôi đã có vấn đề này cho như vậy một thời gian dài và không bao giờ có thể nhận được để dưới cùng của nó. Có vẻ như các ứng dụng bị bỏ ngỏ có thể khiến một số tay cầm vẫn mở, nhưng trong trường hợp của tôi, các quy trình bash đã bị đóng và không có quy trình ssh nào xung quanh (tôi đang sử dụng mosh). Tôi vừa có thể sao chép vấn đề bằng cách khởi chạy vscode bằng cách sử dụng vscode .rồi đóng thiết bị đầu cuối được sử dụng để mở nó. Trong khi cửa sổ vscode vẫn mở, có vẻ như Cygwin không muốn mở thêm thiết bị đầu cuối, ngay sau khi tôi đóng, nó hoạt động.
Elven Spellmaker

25
@ElvenSpellmaker bạn nói đúng, nó cũng liên quan đến code .trường hợp của tôi.
Songal Khoukhi

15
Chỉ vì mục đích xác nhận: Gặp phải vấn đề ngày hôm nay, cũng là do code .trường hợp của tôi. Đóng mã VS đã xóa vấn đề. Tìm tuyệt vời @ElvenSpellmaker
kb.

Câu trả lời:


83

Tìm thấy một vấn đề và giải pháp tương tự trong các nhóm google

Tôi đã mở một dấu nhắc lệnh windows và chạy lệnh

$ tasklist

Dường như các kết nối ssh tôi đã tạo trong các vỏ git bash của tôi không bị đóng khi các cửa sổ đó bị đóng và đang treo các cửa sổ vỏ git bash có sẵn.

Đây có thể là một giải pháp nguy hiểm nhưng từ dấu nhắc lệnh windows tôi đã chạy

$ taskkill /F /IM ssh.exe 

Tất cả mọi thứ dường như được làm việc lại sau này. Nó có thể không trực tiếp là một vấn đề của các quá trình mồ côi, nhưng điều này ít nhất đã làm việc cho tôi.

Lưu ý thêm: bạn cũng có thể giết các quá trình khác, ví dụ như:

$ taskkill /F /IM vim.exe

6
Quy trình này đã hoạt động, mặc dù trong trường hợp của tôi, thủ phạm là node.exe(Node.js) và link.exe(liên kết GNU). Vì vậy, bạn có thể phải săn lùng danh sách nhiệm vụ cho các quá trình phạm tội. Tôi không chắc tại sao, nhưng có vẻ như các chương trình được khởi chạy từ bên trong các phiên Bash có thể bằng cách nào đó tồn tại ngoài lớp vỏ mẹ của chúng.
mamacdon

1
Cảm ơn bạn scott, quy trình này hoạt động như được đề cập bởi @mamacdon ngay cả trong trường hợp thủ phạm của tôi là node.exe.
S52

21
Đối với tôi, tôi đã phải thực hiện "taskkill / F / IM ssh-agent.exe" nhưng đủ gần để bỏ phiếu.
Dylan Kapp

12
Tôi đã phải giết node.exe bằng lệnhtaskkill /F /IM node.exe
Tarator

1
Trong trường hợp của tôi (với Cygwin), đó là một adb.exe duy nhất vẫn đang chạy. Giết nó giải quyết.
Diego Andrade

58

Tôi thấy vấn đề trên windows trong git bash khi tôi giết bảng điều khiển git bash của mình mà không sử dụng thoát. Tôi đã tìm thấy nhiệm vụ ssh-agent.exe từ trình quản lý tác vụ windows để khắc phục sự cố.


4
Điều này làm việc ban đầu. Bây giờ tôi vẫn nhận được nó, ngay cả sau khi giết ssh-agent.exe.
Leo

1
đây là một giải pháp ngắn hạn vấn đề cuối cùng trở lại. hy vọng có một cách lâu dài hơn để khắc phục vấn đề này
Sonic Soul

1
Tôi cũng thấy rằng Node đôi khi cũng bị bỏ chạy, chỉ cần giết nó dường như để giải quyết vấn đề cho tôi.
MusicDev

Sau khi giết quá trình "sh.exe", vấn đề đã được giải quyết. Cảm ơn tất cả.
maris

Giết "winpty-agent.exe" làm việc cho tôi.
demstair

46

Trong trường hợp của tôi, nó có liên quan đến việc sử dụng mã VS. Trước đây tôi đã mở mã VS bằng cách sử dụng thiết bị đầu cuối git bash và thực thi

code .

sau đó đóng thiết bị đầu cuối.

Vấn đề được giải quyết bằng cách đóng tất cả các cửa sổ mã VS đã mở.

Khi bạn có bất kỳ trình soạn thảo hoặc IDE nào cấu hình để mở một thiết bị đầu cuối dưới dạng git bash, thì khi IDE / IDE đang chạy, git bash sẽ quay bash từ "C: \ Windows \ System32 \ bash.exe" và bất kỳ nỗ lực nào khác để bash mở từ một cửa sổ riêng biệt có khả năng sụp đổ.

Giải pháp tốt nhất là tiêu diệt bash IDE / Editor và mở từ một cửa sổ mới hoặc tiếp tục từ lệnh IDE / Editor.


4
Cảm ơn, đó là vấn đề tương tự với tôi
Tarun Nagpal

1
Làm việc như người ở! Cảm ơn!
jrend

1
Có cùng một vấn đề. Chỉ nên mở vs mã trong cmd.
Richard

Chính xác là cùng một vấn đề. Cảm ơn.
Lucien Lu

chính xác cùng một vấn đề. Dù sao cũng cảm ơn bạn.
amar sâu

33

Tôi giải quyết vấn đề này với một cách giải quyết:

  1. Đóng cửa sổ Git Bash.
  2. Quản lý tác vụ mở.
  3. Tìm quy trình 'Git cho Windows'.
  4. Giết nó.
  5. Mở Git Bash.

Nó sẽ ổn ngay bây giờ.


3
Giải pháp đơn giản nhất. Thật đơn giản.
JkAlombro

2
Trong trường hợp của tôi, tôi đã chạy bash.exe và chỉ cần giết nó.
Gilberto Albino

8

Để làm cho cuộc sống dễ dàng hơn (vấn đề này xảy ra khá thường xuyên) tạo một tệp có tên fixbash.battrong thư mục chính và dán này:

taskkill /F /IM ssh-agent.exe

Khi sự cố xảy ra chỉ cần mở cmdvà gõ fixbash.batđể khắc phục sự cố.

Hoặc là

Chỉ cần dán lệnh taskkill vào cmdnếu bạn không muốn tạo tập lệnh.


2
trở về:ERROR: The process "ssh-agent.exe" not found.
Jesse Reza Khorasanee

Giải pháp này đã làm việc cho tôi. Tuy nhiên, bạn phải đi đến trình quản lý tác vụ và tiêu diệt tất cả ssh-agent.exe vì có thể có nhiều
Java Main

6

Khởi động lại máy của bạn.

(Các câu trả lời khác không phù hợp với tôi. (Tôi đã không thử cài đặt lại. Khởi động lại có thể nhanh hơn.))


3
Và nếu điều đó không hiệu quả, hãy cài đặt lại máy của bạn hoặc mua một cái mới.
john16384

6

Đối với tôi (hoặc bất kỳ ai đang chạy thước đo góc, có thể làm hỏng máy chủ Selenium / WebDriver độc lập), tôi cần đến taskkilltrình quản lý web cụ thể đang chạy thử nghiệm của mình.

Vì vậy, chỉ cần một đối số khác: hoặc phiên bản chromedriver của bạn có thể thay đổi

taskkill /f /im chromedriver_2.34.exe

Lưu ý trình điều khiển của bạn có thể thay đổi: IEDriverServer*.*.*.exevs.chromedriver_*.**exe

Phiên bản trình điều khiển của bạn có thể thay đổi: chromedriver_2.34.exevs.chromedriver_2.33.exe

Vấn đề này trở nên tồi tệ hơn sau khi thước đo góc thoát mà không đóng trình duyệt tự động / kiểm tra , (do một vấn đề riêng tôi chưa hiểu.) Đương nhiên nhiều chromedrivernhiệm vụ vẫn chạy, đó là lý do tại sao giết chúng.


3
Đúng, đây là vấn đề của tôi. Tôi có tập lệnh tiện lợi sử dụng Selenium để tìm nạp một số nội dung từ một số trang web nơi không thể sử dụng curl và wget do phải xử lý JavaScript. Dù sao, tôi thường chạy cái này một lần vào buổi sáng và đôi khi nó bị treo lên. Tôi chưa bao giờ thực hiện mối tương quan với lỗi cygwin này cho đến khi tôi thấy bài đăng này, vì vậy CẢM ƠN! Tôi sẽ cập nhật tập lệnh gọi selen để hủy tiến trình chromedriver.exe trước khi thoát.
beaudet

6

Mở trình quản lý tác vụ và giết tiến trình với tên bash, điều này làm việc cho tôi.


6

Điều này xảy ra khi bạn thoát git bash mà không chấm dứt quá trình hiện có. Chỉ cần thử và giết các quá trình mà bạn bắt đầu từ git bash. Tôi đã chạy tiến trình nút bên trong git bash, vì vậy tôi đã giết tất cả các quy trình nút Các bước để giết

  1. Mở trình quản lý tác vụ
  2. Tab chi tiết Goto
  3. Tìm kiếm node.exe (bạn tìm cho bạn các quy trình)
  4. Giết nó mỗi và mọi quá trình nút
  5. Mở Git Bash lần nữa

2
Trong trường hợp của tôi, nó đã được adb shell. Vì vậy, tôi chạy adb kill-servertrong một cửa sổ đã mở và nó đã sửa nó cho tôi. +1
lucidbrot

Đã làm việc. Nhưng cái quái gì vậy ... Tôi chưa thực hiện bất kỳ node.js nào trong vài tháng .... Tại sao nó lại chạy?
JMI MADISON

5

cuối cùng đã tìm ra những gì đã gây ra điều này.

nếu chúng ta sử dụng mã như thế này (rõ ràng hoặc ngầm) tức là trong .bashrctệp

eval $(ssh-agent -s)
ssh-add ~/.ssh/id_rsa

nó sinh ra một quá trình mới

nếu bạn không thoát khỏi nó và chỉ đóng cửa sổ, quá trình đó vẫn đang chạy. Vì vậy, mỗi bash mới được mở chỉ tiếp tục thêm những cái mới mà không loại bỏ cái cũ.

khi thực hiện với một cửa sổ bash, chỉ cần nhấn ctrl+dhoặc gõ exitđể giết tiến trình tác nhân và bạn không nên hết dĩa.


3

Có vẻ như là một vấn đề với các quy trình được khởi chạy từ git bash, như @mamacdon đã đề xuất trong nhận xét của mình về câu trả lời hàng đầu của @Scott Newson.

Đối với tôi, vấn đề xuất hiện nếu tôi khởi chạy vscode từ bash với code và nếu phiên bản vscode này khởi chạy một thiết bị đầu cuối git tích hợp trong khi bash ban đầu vẫn đang chạy.

Không quan trọng là thiết bị đầu cuối đó đã được khởi chạy vào lúc bắt đầu hay sau đó, miễn là trong khi bash ban đầu vẫn đang chạy.

Không xảy ra khi bash bị đóng trước khi thiết bị đầu cuối tích hợp được mở. Không phân biệt giữaexit và đóng bash qua windows. Không xảy ra với một cửa sổ bash cũ hơn vẫn đang chạy.

Cách để đối phó với nó là để tôi đóng các thiết bị đầu cuối trong vscode với exit hoặc 'Kill Terminal' (cẩn thận không trộn nó với 'khung đóng'), hoặc dĩ nhiên, đóng chính vscode.

Nếu bạn gặp lỗi này, hãy cố gắng nhớ những gì bạn đã khởi chạy từ bash và tiêu diệt nó. Nếu các câu trả lời khác có hiệu quả với bạn, thì có lẽ đó là những điều được đưa ra bởi bash của bạn hoặc được khởi chạy bởi các quy trình bạn đã khởi chạy từ bash và bằng cách nào đó, chúng đã nhận được một đứa con của bash ban đầu của bạn.


3

Nếu bạn đang sử dụng Visual Studio Code và bạn không thể tìm thấy ssh-agent.exe hoặc không thể thực hiện tác vụ đó và sau khi mở Git Bash, bạn gặp lỗi đó, chỉ cần truy cập VSCode mở Terminal> New Terminal và chỉ cần nhấn biểu tượng thùng rác (Thiết bị đầu cuối Kill). ví dụ (1: bash) nếu bạn có nhiều thì chỉ cần giết hết chúng và bạn sẽ ổn.


3

Trong trường hợp của tôi, tôi cần phải giết Git bash trong Windows. Vì vậy, đã mở Command Prompt và chạy bên dưới lệnh

$ tasklist

Nó sẽ liệt kê tất cả các tác vụ đang chạy, sau đó cần phải hủy tác vụ bash.exe bằng lệnh bên dưới

$ taskkill /F /IM bash.exe 

2

Mở Trình quản lý tác vụ của bạn, tìm kiếm "sh" Procces và tiêu diệt chúng. Chúc may mắn


2

Theo tôi, giải pháp là đóng Visual Studio Code - mọi nơi tôi cũng có giao diện điều khiển chạy mà không nhận thấy-

Sau khi đóng tất cả trở lại bình thường. Hy vọng điều này sẽ giúp được ai đó.


1

Tôi đã cố gắng để giết tất cả các thiết bị đầu cuối git của tôi trong trình quản lý tác vụ giải quyết vấn đề. Điều này làm việc cho tôi quá. chúc may mắn.


1

Trên phiên bản mới hơn của git cho windows, quá trình tiêu diệt trong trình quản lý tác vụ là "GitExtensions.exe". Giết nó và các thiết bị đầu cuối khởi động lại không có vấn đề.


1

Vui lòng tìm quy trình ssh-agent trong cửa sổ Trình quản lý tác vụ. Sau khi bạn dừng hoặc tắt tiến trình ssh-agent, lỗi sẽ biến mất.


1

Trong trường hợp của tôi, tôi có mã studio hình ảnh đang chạy và đóng nó đã giải quyết vấn đề.


1
Không chắc chắn tại sao điều này đang bị hạ thấp, làm việc cho tôi. Ngoài ra, mã phòng thu trực quan có thể tạo ra các thiết bị đầu cuối nên không ngạc nhiên khi nó có thể ảnh hưởng đến vấn đề này.
Jesse Reza Khorasanee


0

tôi thấy rằng việc giết msys2 terminal trong trình quản lý tác vụ sẽ giải quyết vấn đề


0

Mở Trình quản lý tác vụ, tìm quy trình bash.exe và tắt nó. Giúp trong trường hợp của tôi.


0

Windows 10 này hoạt động với tôi:

1) mở cmd với tư cách quản trị viên

2) loại:

taskkill /f /im git-bash.exe


3) Nếu có Lỗi: Không tìm thấy quy trình "ssh-agent.exe". sau đó:

kiểu:

tasklist

4) Tìm và giết mọi tiến trình bằng các từ như "bash" hoặc "git" (Đây có thể là một giải pháp nguy hiểm, nhưng một khi bạn sẽ tìm thấy tên quy trình, lần sau bạn sẽ biết.)

taskkill /f /im ***.exe


0

Trong trường hợp của tôi, tôi đã có một abd.exe đi lạc vẫn còn mở trong trình quản lý tác vụ. Giết nó đã sửa vấn đề.


-1

Trong loại bash hệ thống:

ps

Giết bất kỳ quá trình tìm kiếm xấu:

kill -9 <ID>

Đã làm cho tôi.


-1

Chỉ cần khởi động lại máy của bạn, trong khi khởi động lại máy của chúng tôi, vấn đề này được giải quyết hãy thử nó.


4
"Nếu điều đó không hiệu quả, hãy thử cắt điện cho tòa nhà của bạn, sau đó cắm lại. Nếu điều đó không hiệu quả, hãy thử gọi cho công ty điện lực địa phương và yêu cầu họ cắt điện cho toàn bộ khu phố vài phút ... vv "
refaelio

1
lol tôi cũng làm như vậy, giải pháp nghe có vẻ khá ngớ ngẩn, nhưng nó hoạt động rất tốt :)
zeroDivider
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.