Recentemente ho riscontrato un problema: ogni volta che provo a eseguire il push al repository git (nel mio caso, Bitbucket), ottengo lerrore:
$ git push origin master [email protected]: Permission denied (publickey). fatal: Could not read from remote repository. Please make sure you have the correct access rights and the repository exists.
Ho trovato un modo per risolverlo eseguendo questi comandi:
eval `ssh-agent` ssh-add -l ssh-add ~/.ssh/id_rsa
Se lo farò e poi proverò a git push origin master
, funzionerà. Ma il problema è che questo problema inizia a comparire dopo un po di tempo (probabilmente dopo il riavvio, non sono sicuro di cosa lo faccia apparire di nuovo). UPD: molto probabilmente non è causato dal riavvio, perché lho appena affrontato 10 minuti dopo aver eseguito il codice precedente e ho ricevuto lo stesso errore. Da allora non ho riavviato il mio laptop.
Cosa può causare un simile comportamento e come posso risolverlo?
Commenti
- 1. confluence.atlassian.com/bbkb/… 2. confluence.atlassian.com/bitbucket/…
- " Chiavi aggiunte al portachiavi tramite ssh -add -K non vengono aggiunti automaticamente a ssh-agent dopo un riavvio. " Hai provato le soluzioni di github .com / jirsbek / SSH-keys-in-macOS-Sierra-portachiavi ?
Risposta
Penso che questo accada perché quando hai generato la tua chiave ssh, hai inserito una passphrase per sicurezza. Quando avvii ssh-agent e aggiungi ssh / rsa_id dovrebbe come per la passphrase.
[root@user xxxxx]# eval "$(ssh-agent -s)" Agent pid 12082 [root@user xxxxx]# ssh-add /home/user/.ssh/id_rsa Enter passphrase for /home/user/.ssh/id_rsa: Identity added: /home/user/.ssh/id_rsa (/home/user/.ssh/id_rsa) git push -u origin master Counting objects: 94, done.
Answer
Ok, ho dimenticato di pubblicare il problema: ho “accidentalmente impostato la mia chiave su un altro server per tutti gli host in ~/.ssh/config
. Quindi lho usata per connettermi a tutti gli host invece di quello giusto. Lho cancellato per tutti gli host e lho impostato solo per quegli host che richiedevano quella chiave, e lho risolto.
Spero che possa essere utile ad altri.