Bagaimana cara mengatasi kesalahan Izin ditolak (publickey) saat menggunakan Git?

632

Saya menggunakan Mac Snow Leopard dan saya baru saja menginstal git.

Saya baru saja mencoba

git clone [email protected]:cakebook.git

tapi itu memberi saya kesalahan ini:

Initialized empty Git repository in `/Users/username/Documents/cakebook/.git/`
Permission denied (publickey).
fatal: The remote end hung up unexpectedly

Apa yang saya lewatkan?
Saya juga mencoba melakukannya ssh-keygentanpa frasa sandi tetapi masih kesalahan yang sama.

teepusink
sumber
8
Sudahkah Anda mencoba mengunggah kunci publik yang telah Anda buat melalui ssh-keygen?
Patrick Cornelissen
Masalah saya adalah saya mencoba mengkloning sudo- ini adalah pengguna lain dengan kunci publik lain.
Vitaly Zdanevich
kesalahan yang sama. Saya sebelumnya membuat kunci publik melalui github, kemudian menghasilkan pasangan kunci dengan ssh-keygenutilitas. Menghapus kunci publik lama dalam pengaturan pribadi di github dan menambahkan ssh id_rsa.pub yang dihasilkan ssh ke kunci SSH dan GPG memperbaiki masalah izin kloning.
Tanner Dolby

Jawaban:

774

Jika pengguna belum membuat pasangan kunci publik / pribadi ssh yang ditetapkan sebelumnya

Info ini berfungsi pada Chaw tetapi dapat diterapkan ke semua repositori git lain yang mendukung otentikasi pubkey SSH. (Lihat gitolite , gitlab atau github misalnya.)

Pertama mulai dengan mengatur pasangan kunci publik / pribadi Anda sendiri. Ini dapat menggunakan DSA atau RSA, jadi pada dasarnya semua kunci yang Anda atur akan berfungsi. Pada kebanyakan sistem, Anda dapat menggunakan ssh-keygen.

  • Pertama, Anda ingin cd ke direktori .ssh Anda. Buka terminal dan jalankan:

    cd ~/.ssh && ssh-keygen

  • Selanjutnya Anda perlu menyalin ini ke clipboard Anda.
    • Saat OS X dijalankan: cat id_rsa.pub | pbcopy
    • Di Linux dijalankan: cat id_rsa.pub | xclip
    • Di Windows (via Cygwin / Git Bash) jalankan: cat id_rsa.pub | clip
  • Tambahkan kunci Anda ke akun Anda melalui situs web.
  • Akhirnya atur .gitconfig Anda.
    • git config --global user.name "bob"
    • git config --global user.email bob@... (jangan lupa untuk me-restart baris perintah Anda untuk memastikan konfigurasi telah dimuat ulang)

Itu saja Anda harus baik untuk mengkloning dan checkout.

Informasi lebih lanjut dapat ditemukan di https://help.github.com/articles/generating-ssh-keys (terima kasih kepada @Lee Whitney) -

Jika pengguna telah membuat pasangan kunci publik / pribadi ssh yang ditetapkan sebelumnya

  • periksa kunci mana yang telah diotorisasi pada pengaturan akun github atau gitlab Anda
  • tentukan kunci privat terkait mana yang harus dikaitkan dari komputer lokal Anda

eval $(ssh-agent -s)

  • tentukan di mana kunci berada

ssh-add ~/.ssh/id_rsa

Rufinus
sumber
6
Baik. Ini sebenarnya bukan git tetapi masalah sinkronisasi ssh. Saya mendapat hal yang sama dengan Assembla dan tautan Anda membantu saya menyelesaikannya. Terima kasih!
Alexandre Bourlier
Jawaban ini bermanfaat tetapi ini tampaknya lebih lengkap dan semudah jika Anda menghasilkan kunci dari awal: help.github.com/articles/generating-ssh-keys
whitneyland
6
Saya mengalami masalah dengan keygen. Ini sensitif terhadap alamat email dalam variabel env global. Jika Anda mengalami masalah ini, Anda perlu menentukan alamat email untuk akun github Anda di langkah pertama: ssh-keygen -t rsa -C "
[email protected]
30
Jika itu masih tidak berhasil, Anda harus melakukannya ssh-add ~/.ssh/id_rsa.
Michael Litvin
1
Menyalin menggunakan xclipdi Linux hanya bekerja dengan melakukan hal-hal berikut xclip -sel clip < ~/.ssh/id_rsa.pubyang tercantum di sini: help.github.com/articles/generating-ssh-keys
Pat Migliaccio
217

Pemecahan masalah yang lebih luas dan bahkan perbaikan otomatis dapat dilakukan dengan:

ssh -vT [email protected]

Sumber: https://help.github.com/articles/error-permission-denied-publickey/

stevek
sumber
1
Masalah saya ada hubungannya dengan memiliki kunci yang berbeda untuk server saya. Setelah saya menggunakan perintah di atas untuk menentukan masalah, saya memperbaiki IdentifyFile di file konfigurasi saya dan itu berhasil.
Jarie Bolander
1
Menampilkan kunci yang github coba gunakan untuk mengautentikasi. v bermanfaat
cdosborn
9
Ini tidak memperbaiki apa pun. Saya masih mendapatkan kesalahan dalam pertanyaan OP.
IgorGanapolsky
5
Perintah ada di sana untuk membantu Anda memecahkan masalah, itu bukan saklar ajaib untuk memperbaiki ini.
stevek
2
Saya tidak bisa mengatakan ini menyelesaikan apa pun, tetapi ini adalah perintah yang sangat menarik dan bekerja dengan GitHub Enterprise juga.
Hack-R
164

Kesalahan ini dapat terjadi ketika Anda mengakses URL SSH (Baca / Tulis) alih-alih Git Read-Only URL tetapi Anda tidak memiliki akses tulis ke repo itu.

Terkadang Anda hanya ingin mengkloning repo Anda sendiri, mis. Menyebar ke server. Dalam hal ini Anda sebenarnya hanya perlu akses BACA-SAJA. Tetapi karena itu repo Anda sendiri , GitHub dapat menampilkan URL SSH jika itu yang Anda inginkan. Dalam situasi ini, jika kunci publik host jarak jauh Anda tidak ada di GitHub SSH Keys Anda, akses Anda akan ditolak, yang diharapkan akan terjadi .

Kasus setara adalah ketika Anda mencoba mengkloning repo orang lain yang Anda tidak memiliki akses tulis dengan URL SSH.

Singkatnya, jika maksud Anda adalah untuk mengkloning-hanya repo, gunakan HTTPS URL ( https://github.com/{user_name}/{project_name}.git) alih-alih URL SSH ( [email protected]:{user_name}/{project_name}.git), yang menghindari (tidak perlu) validasi kunci publik.


Pembaruan: GitHub sedang menampilkan HTTPS sebagai protokol default sekarang dan langkah ini mungkin dapat mengurangi kemungkinan penyalahgunaan URL SSH.

kavinyao
sumber
Dengan https://github.comurl git, katanya SSL certificate problem: self signed certificate in certificate chain. git -c http.sslVerify=false clone ...sepertinya langkah berbahaya. Chrome tidak memberikan peringatan ssl. Pikiran?
Jason Kleban
1
@ uosɐſ Maaf tapi saya tidak pernah mengalami masalah ini. Mungkin hal pertama yang harus dilakukan adalah mencoba perintah yang sama dari mesin yang berbeda dan melihat apakah masalahnya masih ada.
kavinyao
1
Ini juga melakukannya untuk saya. Terima kasih. Untuk mengkloning git repo saya ke akun hosting bersama saya (1 dan 1) saya harus menggunakan git clone https://github.com/MyUserName/MyRepo.git Cukup klik pada tautan teks di bawah URL repo di sebelah kanan halaman Github di mana dikatakan " Anda dapat mengkloning dengan HTTPS, SSH, atau Subversion . " (Klik HTTPS untuk mendapatkan tautan alih-alih SSH default .)
Oliver Schafeld
TERIMA KASIH!!!!!!
Sharl Sherif
Jawaban yang sangat bagus. Akhirnya seseorang menjelaskan mengapa itu bekerja seperti itu.
Qback
104

Tautan bantuan github membantu saya menyelesaikan masalah ini. Sepertinya kunci ssh tidak ditambahkan ke ssh-agent. Inilah yang akhirnya saya lakukan.

Perintah 1:

Pastikan ssh-agent diaktifkan. Perintah memulai ssh-agent di latar belakang:

eval "$(ssh-agent -s)"

Perintah 2:

Tambahkan kunci SSH Anda ke ssh-agent:

ssh-add ~/.ssh/id_rsa
jarora
sumber
7
Setelah upgrade ke OSx El Capitan ke Sierra, ini berhasil untuk saya.
Louwki
7
Bekerja untuk saya setelah upgrade ke macOS Sierra =)
Adriano Resende
Ini bekerja untuk saya di Raspberry Pi, di mana ssh-add memiliki bendera "-k" bukan "-K", tampaknya. Tetapi begitu saya menambahkan kunci penempatan saya, saya berhasil mengkloning repo saya menggunakan tautan SSH-nya.
Josh
34

Mendapat laporan kesalahan yang sama.

Tetap dengan menggunakan HTTP. Karena saya tidak ingin mengatur "kunci SSH" untuk PC uji.

Ubah URL menjadi HTTP saat dikloning:

git clone https://github.com/USERNAME/REPOSITORY.git

Masalah saya sedikit berbeda : URL saya atur ketika menambahkan repo lokal yang ada ke remote, dengan menggunakan:

git remote add origin ssh://github.com/USERNAME/REPOSITORY.git

Untuk memperbaikinya, setel ulang URL ke HTTP:

git remote set-url origin https://github.com/USERNAME/REPOSITORY.git

BTW, Anda dapat memeriksa URL Anda menggunakan perintah:

git remote -v
origin  https://github.com/USERNAME/REPOSITORY.git (fetch)
origin  https://github.com/USERNAME/REPOSITORY.git (push)

Semoga ini bisa membantu orang seperti saya. : D

Robina Li
sumber
22

Ini bekerja untuk saya:

ssh-add ~/.ssh/id_rsa
Schoofs Wouter
sumber
21

Perhatikan bahwa (setidaknya untuk beberapa proyek) Anda harus memiliki akun github dengan kunci ssh .

Lihatlah kunci-kunci yang tercantum dalam agen otentikasi Anda ( ssh-add-l )
(jika Anda tidak melihat, tambahkan salah satu kunci Anda yang ada dengan ssh-add / path / ke / kunci / Anda (mis .: ssh-add ~ /.ssh/id_rsa ))
(jika Anda tidak memiliki kunci, buat terlebih dahulu. Lihat: http://rcsg-gsir.imsb-dsgi.nrc-cnrc.gc.ca/documents/internet/node31.html atau hanya google ssh-keygen)

Untuk memverifikasi bahwa Anda memiliki kunci yang terkait dengan akun github Anda :

Pergi ke: https://github.com/settings/ssh

Anda harus melihat setidaknya satu kunci dengan kunci hash yang cocok dengan salah satu hash yang Anda lihat ketika Anda mengetik ssh-add-l hanya beberapa menit yang lalu.

Jika tidak, tambahkan satu, lalu coba lagi.

Mason Bryant
sumber
Ini berhasil untuk saya. Itu terjadi pada saya karena kunci saya tidak ditambahkan ke agen auth. Terima kasih.
antonD
19

Saya berjuang dengan masalah yang sama itulah yang saya lakukan dan saya bisa mengkloning repo. Saya mengikuti prosedur ini untuk iMac .

Langkah Pertama: Memeriksa apakah kita sudah memiliki kunci SSH publik.

  1. Buka Terminal.
  2. Enter ls -al ~/.sshuntuk melihat apakah kunci SSH yang ada ada:

Periksa daftar direktori untuk melihat apakah Anda sudah memiliki kunci SSH publik. Publik cacat adalah salah satu dari d_dsa.pub berikut, id_ecdsa.pub, id_ed25519.pub, id_rsa.pub

Jika Anda tidak menemukan maka lanjutkan ke langkah 2 jika tidak ikuti langkah 3

Langkah 2: Menghasilkan kunci SSH publik

  1. Buka Terminal.
  2. Masukkan perintah followong dengan alamat email valid yang Anda gunakan untuk github ssh-keygen -t rsa -b 4096 -C "[email protected]"
  3. Anda akan melihat berikut di terminal Generating public/private rsa key pair. Ketika diminta untuk "Enter a file in which to save the key,"menekan Enter. Ini menerima lokasi file default. Ketika diminta untuk Enter a file in which to save the key (/Users/you/.ssh/id_rsa): [Press enter]Cukup tekan enter lagi. Saat diminta, ketikkan frasa sandi yang aman.
  4. Enter passphrase (empty for no passphrase): [Type a passphrase]tekan enter jika Anda tidak ingin Enter same passphrase again: [Type passphrase again]menekan enter lagi

Ini akan menghasilkan id_rsa.pub

Langkah 3: Menambahkan kunci SSH Anda ke ssh-agent

  1. Jenis interminal eval "$(ssh-agent -s)"
  2. Tambahkan kunci SSH Anda ke ssh-agent. Jika Anda menggunakan kunci SSH yang ada daripada menghasilkan kunci SSH baru, Anda harus mengganti id_rsa dalam perintah dengan nama file kunci pribadi yang ada. Masukkan perintah ini$ ssh-add -K ~/.ssh/id_rsa

Sekarang salin kunci SSH dan tambahkan juga ke akun github Anda

  1. Di terminal masukkan perintah ini dengan nama file ssh Anda. pbcopy < ~/.ssh/id_rsa.pubIni akan menyalin file ke clipboard Anda Sekarang buka akun github Anda Buka Pengaturan> Kunci SSH dan GPG> Kunci SSH Baru Masukkan judul dan tempelkan kunci dari clipboard dan simpan. Voila kamu sudah selesai.
Zeeshan Shabbir
sumber
2
Salinan pengguna Windows melalui: cat ~ / .ssh / id_rsa.pub | clip
Fabii
1
Akhirnya setelah membaca di sana-sini selama satu jam, solusi langkah demi langkah .... berfungsi dengan baik. Ingatlah untuk menambahkan kata sandi github Anda sebagai frasa sandi dalam langkah-langkah yang sebaliknya harus ditambahkan secara manual setiap kali
Afshin Ghazi
13

Saya memiliki situasi yang sedikit berbeda, saya masuk ke server jarak jauh dan menggunakan git di server, ketika saya menjalankan perintah git saya mendapat pesan yang sama

   Permission denied (publickey).
   fatal: The remote end hung up unexpectedly

Cara saya memperbaikinya adalah dengan mengubah file / etc / ssh_config di Mac saya. dari

ForwardAgent no 

untuk

ForwardAgent yes
Richipal
sumber
Kesalahan terjadi saat mencoba mengambil permata dari github dari VM VirtualBox. Diperbarui Vagrantfile saya untuk digunakan config.ssh.forward_agent = true, restart VM, dan sekarang berfungsi.
Chris Bloom
1
Mungkin bukan menjadi pilihan terbaik dalam hal keamanan menurut ini: heipei.github.io/2015/02/26/…
Ayah
13

Saya bertemu masalah yang sama karena saya pikir perbedaan antara SSH dan HTTPS adalah

https://github.com/USERNAME/REPOSITORY.git

ssh://github.com/USERNAME/REPOSITORY.git

Jadi saya berubah dari HTTPS ke SSH hanya dengan mengubah apa https://- ssh://apa di akhir url diubah.

Tetapi kenyataannya adalah:

https://github.com/USERNAME/REPOSITORY.git

[email protected]:USERNAME/REPOSITORY.git

Yang berarti saya berubah ssh://github.com/USERNAME/REPOSITORY.gitagar [email protected]:USERNAME/REPOSITORY.gitberfungsi.

Kesalahan bodoh tetapi harapan membantu seseorang!

William Hu
sumber
ya, saya berubah ssh://github.com/USERNAME/REPOSITORY.gitagar [email protected]:USERNAME/REPOSITORY.gitberfungsi.
William Hu
Tentu. Saya hanya mengatakan saya tidak melihat maksud menyebutkan https;)
OneCricketeer
Saya melihat karena saya hanya menggunakan sshalih-alih httpsjadi saya hanya mengubah 'https: //' menjadi 'ssh: // `maka saya mendapat kesalahan. Jadi ubah 'ssh: // git /../ `ke' git @ .. /":) Diedit jawaban saya.
William Hu
Ini bekerja untuk saya. Terima kasih banyak! Saya mencoba https dan kemudian ssh tetapi masih terus menolak akses saya sampai membuatnya menjadi jalan Anda dengan "git clone [email protected]: /myusername/myproject.git".
Thach Van
6

Di Windows, pastikan semua aplikasi Anda menyetujui HOME. Msys secara mengejutkan TIDAK akan melakukannya untuk Anda. Saya harus menetapkan variabel lingkungan karena ssh dan git sepertinya tidak bisa menyetujui di mana direktori .ssh saya.

Jason
sumber
6

Apakah Anda berada dalam lingkungan perusahaan ? Apakah mungkin variabel sistem Anda baru saja berubah? Per jawaban SO ini , kunci ssh hidup di %HOMEDRIVE%%HOMEPATH%\.ssh\id_rsa.pub. Jadi jika %HOMEDRIVE%baru-baru ini berubah, git tidak tahu ke mana harus mencari kunci Anda, dan dengan demikian semua hal otentikasi.

Coba jalankan ssh -vT [email protected]. Perhatikan di mana identity filelokasinya. Bagi saya, itu menunjuk bukan ke normal saya \Users\MyLogintetapi ke drive jaringan, karena perubahan variabel lingkungan didorong pada tingkat jaringan.

Solusinya? Karena baru saya %HOMEDRIVE%memiliki izin yang sama dengan file lokal saya, saya baru saja memindahkan folder .ssh saya di sana, dan menyebutnya sehari.

Andrew
sumber
ini bekerja untuk saya. kemarin kunci ssh saya bekerja tetapi hari ini beberapa pengaturan sistem saya bisa berubah. Saya hanya menambahkan kunci ss lagi dan berfungsi sekarang.
Hitesh Agarwal
6

Kawan begini cara kerjanya untuk saya:

  1. Buka terminal dan buka pengguna [Lihat gambar terlampir]
  2. Buka folder .ssh dan pastikan tidak ada file seperti id_rsa atau id_rsa.pub kalau tidak terkadang tidak akan menulis ulang file dengan benar
  3. git --version [Periksa instalasi dan versi git]
  4. git config --global user.email "id email Anda"
  5. git config --global user.name "nama Anda"
  6. git config --list [pastikan Anda telah menetapkan nama & email Anda]
  7. cd ~ / .ssh
  8. ssh-keygen, ia meminta untuk menyimpan file, mengizinkannya
  9. cat ~ / .ssh / id_rsa.pub [Akses kunci publik Anda & salin kunci ke pengaturan gerrit]

Catatan : Anda seharusnya tidak menggunakan perintah sudo dengan Git. Jika Anda memiliki alasan yang sangat bagus Anda harus menggunakan sudo, maka pastikan Anda menggunakannya dengan setiap perintah (mungkin lebih baik menggunakan su untuk mendapatkan shell sebagai root pada saat itu). Jika Anda membuat kunci SSH tanpa sudo dan kemudian mencoba menggunakan perintah seperti sudo git push, Anda tidak akan menggunakan kunci yang sama yang Anda hasilkan

masukkan deskripsi gambar di sini

masukkan deskripsi gambar di sini

vikram jeet singh
sumber
5

Petunjuk dasar GIT tidak membuat referensi ke hal-hal kunci SSH. Mengikuti beberapa tautan di atas, saya menemukan halaman bantuan git yang menjelaskan, langkah demi langkah, bagaimana melakukan ini untuk berbagai sistem operasi (tautan tersebut akan mendeteksi OS Anda dan mengarahkan ulang, sesuai dengan itu):

http://help.github.com/set-up-git-redirect/

Ia menelusuri semua yang diperlukan untuk GITHub dan juga memberikan penjelasan terperinci seperti "mengapa menambahkan frasa sandi saat membuat kunci RSA." Saya pikir saya akan mempostingnya, kalau-kalau itu membantu orang lain ...

gMale
sumber
5

Salah satu cara termudah

pergi ke terminal-

  git push <Git Remote path> --all
Vizllx
sumber
3

Jika Anda memiliki lebih dari satu kunci, Anda mungkin perlu melakukannya ssh-add private-keyfile

Kashif
sumber
Terima kasih banyak! Ini memang masalah saya.
GoGreen
[root @ li566-238 hanjiyun] # ssh-add private-keyfile private-keyfile: Tidak ada file atau direktori seperti itu
JY Han
3

Saya menemukan kesalahan ini karena saya perlu memberikan izin direktori kerja saya yang sekarang 700:

chmod -R 700 /home/ec2-user/
duhaime
sumber
3

Saya harus menyalin kunci ssh saya ke folder root. Google Cloud Compute Engine menjalankan Ubuntu 18.04

sudo cp ~/.ssh/* /root/.ssh/
Kandarp
sumber
2

Saya baru saja mengalami masalah ini ketika mengatur proyek saya saat ini, dan tidak ada solusi di atas yang berfungsi. jadi saya mencoba mencari apa yang sebenarnya terjadi pada daftar debug menggunakan perintah ssh -vT [email protected]. Saya perhatikan bahwa nama file kunci pribadi saya tidak ada dalam daftar. jadi mengganti nama nama file kunci pribadi untuk 'id_rsa' melakukan pekerjaan. Semoga ini bisa membantu.

Rhey M.
sumber
Tidak membantu dalam kasus ketika Anda menggunakan kunci "id_rsa" untuk hal lain ....
random_user_name
2

Cukup lurus ke depan. Ketikkan perintah di bawah ini

ssh-keygen -t rsa -b 4096 -C "[email protected]"

Hasilkan kunci SSH. Buka file dan salin isinya. Buka halaman pengaturan GitHub, dan klik pada kunci SSH. Klik Tambahkan kunci SSH baru, dan rekatkan konten di sini. Itu saja :) Anda seharusnya tidak melihat masalah lagi.

karthik339
sumber
1

Saya mendapatkan kesalahan yang sama dengan Izin ditolak (publickey) ketika mencoba menjalankan makefile.

Sebagai alternatif untuk langkah-langkah SSH di atas, Anda dapat menginstal aplikasi GitHub asli untuk Mac.

Klik Unduh GitHub untuk Mac dari - https://help.github.com/articles/set-up-git#platform-mac

Setelah Anda menyelesaikan pengaturan dengan akun git hub Anda (saya juga menginstal alat baris perintah git hub tetapi tidak yakin apakah langkah ini diperlukan atau tidak) maka saya menerima email -

[GitHub] Kunci publik baru telah ditambahkan ke akun Anda

dan kesalahan saya diperbaiki.

WickedW
sumber
1

Saya mendapatkan kesalahan yang sama. Masalah saya adalah pencampuran dalam sudo.

Saya tidak dapat membuat direktori tempat saya mengkloning secara otomatis tanpa mengawali perintah git clone dengan sudo. Ketika saya melakukan itu, bagaimanapun, kunci ssh saya di mana tidak dirujuk dengan benar.

Untuk memperbaikinya, saya menetapkan izin melalui chmod pada direktori induk yang saya inginkan untuk mengandung klon saya sehingga saya bisa menulisnya. Lalu aku menjalankan git clone TANPA awalan sudo. Kemudian berhasil! Saya mengubah izin kembali setelah itu. Selesai

Terima kasih
sumber
1

Saya mendapatkan kesalahan ini karena saya membuat kunci ssh dengan email yang salah. Saya dapat terhubung menggunakan ssh, tetapi tidak menggunakan git. Solusinya adalah membuat ulang kunci menggunakan alamat email utama akun github saya.

Charles Brunet
sumber
1

Ini berhasil untuk saya.

Kunci publik Anda disimpan ke file id_rsa.pub; dan adalah kunci yang Anda unggah ke akun Anda. Anda dapat menyimpan kunci ini ke clipboard dengan menjalankan ini:

pbcopy <~ / .ssh / id_rsa.pub

  • salin kunci SSH ke clipboard, kembali ke portal web.
  • Di bidang Kunci SSH, rekatkan kunci SSH Anda.
  • Di bidang Nama, berikan nama untuk kunci.
  • simpan.
Harshikesh Kumar
sumber
1

Ini berhasil untuk saya

ssh -i [your id_rsa path] -T [email protected]
Tuan 陈哲
sumber
Anda lebih suka menjelaskan mengapa jawaban Anda akan menyelesaikan masalahnya, terima kasih.
Muhammed Refaat
1

Solusi termudah untuk ini, ketika Anda mencoba untuk mendorong ke repositori dengan nama pengguna yang berbeda adalah:

 git remote set-url origin https://[email protected]/USERNAME/PROJECTNAME.git
Nizar B.
sumber
1

Kesalahan aneh ini, dalam kasus saya adalah gejala gnome-keyring-daemonsalah menyebutkan kunci yang diperlukan kata sandi.

Saya mengikuti langkah-langkah yang dijelaskan di sini, dan memasukkan kata sandi melalui terminal. Kesalahan, alias antarmuka GUI yang membingungkan, telah diatasi. Lihat: /ubuntu/3045/how-to-disable-gnome-keyring

rivanov
sumber
1

Dalam kasus saya, saya telah menginstal ulang ubuntu dan nama pengguna diubah dari sebelumnya. Dalam hal ini kunci ssh yang dihasilkan juga berbeda dari yang sebelumnya.

Masalah diselesaikan dengan hanya menyalin kunci publik ssh saat ini, di repositori. Kunci akan tersedia di pengguna Anda/home/.ssh/id_rsa.pub

Sonu
sumber
1

Di MAC saya, saya memecahkan ini dengan:

cp ~/.ssh/github_rsa ~/.ssh/id_rsa

Entah mengapa git saya berhenti untuk menemukan kunci privat dalam github_rsafile tersebut. Ini terjadi dalam repo tertentu. Maksud saya, di repositori lain git tetap bekerja dengan normal.

Saya pikir itu bug.

Saya dapat menemukan perilaku ini berjalan ssh -vT [email protected]

CelinHC
sumber