Saya mengikuti panduan git tetapi saya memiliki masalah aneh ini ketika mencoba terhubung ke github:
$ ssh -v [email protected]
OpenSSH_4.6p1, OpenSSL 0.9.8e 23 Feb 2007
debug1: Reading configuration data /c/Documents and Settings/mugues/.ssh/config
debug1: Applying options for github.com
debug1: Connecting to github.com [207.97.227.239] port 22.
debug1: connect to address 207.97.227.239 port 22: Attempt to connect timed out without establishing a connection
ssh: connect to host github.com port 22: Bad file number
Ini adalah file konfigurasi saya di bawah .ssh
Host github.com
User git
Hostname github.com
PreferredAuthentications publickey
IdentityFile "C:\Documents and Settings\mugues\.ssh\id_rsa"
TCPKeepAlive yes
IdentitiesOnly yes
Ada ide?
Jawaban:
Setelah mengalami masalah ini sendiri, saya menemukan solusi yang berfungsi untuk saya:
Pesan eror:
Anda hanya akan melihat pesan nomor file yang buruk ketika di windows menggunakan shell MINGGW. Pengguna Linux hanya akan mendapatkan Timed out.
Masalah:
SSH mungkin diblokir pada port 22. Anda dapat melihat ini dengan mengetik
Seperti yang Anda lihat negara disaring, yang berarti ada sesuatu yang memblokirnya. Anda dapat menyelesaikan ini dengan melakukan SSH ke port 443 (firewall / ISP Anda tidak akan memblokir ini). Penting juga bahwa Anda perlu ssh ke "ssh.github.com" alih-alih github.com. Jika tidak, Anda akan melaporkan ke server web alih-alih server ssh. Di bawah ini semua langkah yang diperlukan untuk menyelesaikan masalah ini.
Larutan:
(Pertama-tama pastikan Anda membuat kunci Anda seperti dijelaskan di http://help.github.com/win-set-up-git/ )
buat file ~ / .ssh / config (file konfigurasi ssh terletak di direktori pengguna Anda. Pada windows mungkin
%USERPROFILE%\.ssh\config
Rekatkan kode berikut di dalamnya:
Simpan file.
Lakukan ssh seperti biasa:
Perhatikan bahwa saya tidak harus memberikan nama pengguna atau nomor port.
sumber
ssh: connect to host ssh.github.com port 443: Bad file number
.ssh/config
file di windows 7, pastikan Anda memiliki Var Pengguna-LingkunganHOME
dengan%USERPROFILE%
nilai -> membantu saya, ketika ssh saya tidak dapat menemukannyaInformasi kuncinya ditulis dalam jawaban @ Sam tetapi tidak terlalu menonjol, jadi mari kita perjelas.
"Nomor file buruk" tidak informatif, ini hanya pertanda menjalankan git's ssh di Windows.
Baris yang muncul bahkan tanpa
-v
beralih:sebenarnya tidak relevan .
Jika Anda fokus pada itu Anda akan membuang-buang waktu karena itu bukan petunjuk tentang apa masalah sebenarnya, hanya efek menjalankan ssh git pada Windows. Itu bahkan bukan tanda bahwa git atau ssh menginstal atau konfigurasi salah. Sungguh, abaikan saja .
Perintah yang sama di Linux malah menghasilkan pesan ini untuk saya, yang memberikan petunjuk aktual tentang masalahnya:
Solusi aktual: abaikan "nomor file buruk" dan dapatkan informasi lebih lanjut
Fokus pada baris yang ditambahkan dengan
-v
pada baris perintah. Dalam kasus saya itu adalah:Masalah saya adalah salah ketik pada alamat IP, tetapi masalah Anda mungkin berbeda.
Apakah pertanyaan ini tentang "nomor file yang buruk", atau tentang banyak alasan mengapa koneksi bisa habis?
Jika seseorang dapat membuktikan bahwa "nomor file yang buruk" hanya muncul ketika alasan sebenarnya adalah "waktu koneksi habis" maka masuk akal untuk menjelaskan mengapa koneksi bisa waktu habis.
Sampai saat itu, "nomor file buruk" hanyalah pesan kesalahan umum dan pertanyaan ini dijawab sepenuhnya dengan mengatakan "abaikan saja dan cari pesan kesalahan lainnya".
EDIT: Qwertie menyebutkan bahwa pesan kesalahan memang generik, karena dapat terjadi pada "Sambungan ditolak" juga. Ini mengkonfirmasi analisis.
Tolong jangan mengacaukan pertanyaan ini dengan petunjuk umum dan jawaban, mereka tidak ada hubungannya dengan topik aktual (dan judul) dari pertanyaan ini yang merupakan "Kesalahan Git SSH:" Hubungkan ke host: nomor file buruk "". Jika menggunakan
-v
Anda memiliki pesan yang lebih informatif yang pantas dengan pertanyaan mereka sendiri, kemudian buka pertanyaan lain, maka Anda dapat membuat tautan ke sana.sumber
scp
baris perintah saya menambahkan "debug1: sambungkan ke port 216.34.181.70 port 22: Sambungan ditolak" sebelum "Nomor file salah" sehingga tidak selalu merupakan kesalahan "batas waktu".Ini bekerja untuk saya:
sumber
Mungkin firewall atau aplikasi pemblokir (PeerBlock dll.) Memblokir porta Anda
sumber
Anda juga dapat mencoba:
untuk melihat apakah Anda memiliki konektivitas ke server. Saya melihat pesan ini dan ternyata VPN yang saya akses memblokir akses. Terputus dari VPN dan saya baik untuk pergi.
sumber
Apa yang saya temukan adalah, ini terjadi ketika koneksi Anda buruk. Saya memilikinya beberapa menit yang lalu ketika mendorong ke repo saya, itu terus gagal dan beberapa saat setelah itu, koneksi terputus.
Setelah itu kembali, dorongan segera pergi.
Saya percaya itu bisa disebabkan oleh penurunan koneksi dari sisi Anda atau mereka.
sumber
bad file number
kesalahan ketika koneksi terputus.Jika SSH diblokir lebih dari 22
cukup perbarui
origin
ke https Andagit remote set-url origin https://github.com/ACCOUNT_NAME/REPO_NAME.git
verifikasi bahwa perubahan telah dilakukan
git remote -v
sumber
Saya hanya memiliki masalah yang sama dan mencoba setiap solusi yang dapat saya temukan, tetapi tidak ada yang berhasil. Akhirnya, saya mencoba berhenti dari Git Bash dan membukanya kembali, dan semuanya bekerja dengan sempurna.
Jadi, cobalah berhenti dari Git Bash dan buka kembali.
sumber
Cobalah untuk keluar dari instance git bash di mana Anda membuat pengaturan dan coba buka kembali. Akhirnya berhasil untuk saya.
sumber
Pada windows saya mencoba berhenti git bash dan menjalankan kembali tetapi tidak berhasil, akhirnya saya (frustasi) melakukan restart dan itu berhasil lain kali :)
sumber
Periksa ulang apakah Anda telah menerbitkan kunci publik Anda melalui antarmuka Administrasi GitHub Anda.
Kemudian pastikan port 22 tidak terhalang (seperti yang diilustrasikan dalam pertanyaan ini )
sumber
Dalam kasus saya, alamat IP host git kami telah berubah.
Cukup pembilasan cache DNS memperbaiki masalah.
sumber
Membuat file config untuk menggunakan port 443 tidak berhasil untuk saya. Akhirnya saya mencoba mematikan koneksi wifi saya, menyalakannya lagi dan masalahnya hilang. Aneh. Solusi konyol tetapi dapat membantu seseorang :)
sumber
Periksa remote Anda dengan git remote -v Sesuatu seperti ssh: /// gituser @ myhost: /git/dev.git
salah karena triple /// slash
sumber
Saya melihat masalah ini ketika saya mengakses bitbucket di jaringan perusahaan, sementara git bekerja dengan baik di jaringan rumah.
Saya menggunakan protokol https untuk mengatasinya.
Silakan gunakan kata-kata yang sesuai untuk mengganti "akun saya" dan "laporan saya".
sumber
Solusi berikut ini bekerja untuk saya ketika mencoba SSH ke AWS EC2 Ubuntu instance dari PC Windows 7 (32 Bit) saya di belakang firewall perusahaan yang mengatur Proxy-
Tambahkan blok berikut ke
C:\Users\<YOUR_WINDOWS_USER>\.ssh\config
file-Anda perlu menambahkan konfigurasi serupa per host yang Anda inginkan ke SSH.
sumber
Saya punya masalah ketika saya memiliki FileZilla-Connection terbuka pada Windows. FileZilla Tertutup -> Masalah terpecahkan.
sumber
Ini adalah solusi sederhana untuk menghemat beberapa pengetikan Anda dapat menggunakan langkah-langkah berikut di git bash dengan mudah ..
(1) buat repositori jarak jauh
Catatan: Jika kata sandi Anda mengandung tanda '@' gunakan '% 40' sebagai gantinya
(2) Kemudian lakukan apa pun yang Anda inginkan dengan repositori jarak jauh
sumber
Dalam kasus saya hanya me-restart router WiFi membantu.
sumber