I repository GitHub clonati richiedono una password, mentre quelli creati originariamente no


9

Ho appena perso un sacco di repository dal mio disco, quindi li ho clonati da GitHub. Ora chiedono nome utente e password ogni volta che invio qualcosa a GitHub. Quelli che non sono stati eliminati non lo fanno.
L'unica soluzione che ho letto per sbarazzarsi del prompt username / password è la generazione della chiave ssh. Il fatto è che ho già una chiave, altrimenti non potrei spingere senza prompt in quei repository, che non ho clonato.

Ho cercato git configdue dei miei repository, uno che posso inviare senza password e uno che ho clonato. L'unica differenza era branch.master.remotee le branch.master.mergeimpostazioni, che ho disattivato, facendo git configlo stesso. Ma il prompt è ancora lì.

Non sono nemmeno sicuro che la generazione della nuova chiave ssh funzionerà. Quali sono le mie opzioni?


Consultare help.github.com/ssh-issues e fornire maggiori dettagli. Cosa succede quando provi a SSH?

Risposte:


21

La mia ipotesi:

I vecchi repository utilizzavano telecomandi SSH ( git@github.com:o ssh://git@github.com/prefissi), che utilizzavano l'autenticazione a chiave pubblica. (In effetti, il server SSH di Github non chiede mai una password.)

I nuovi repository utilizzano i telecomandi HTTP ( ), che supportano solo l' autenticazione HTTP Basic basata su password e non utilizzano le chiavi SSH.https://username@github.com/

Modifica gli URL remoti per utilizzare nuovamente SSH. Usa git remote set-urlo modifica .git/configper farlo. Sostituire

https: // username @ github.com / username /repo.git

con solo

git@github.com: nome utente /repo.git

Puoi anche avere una voce nel tuo ~/.gitconfigche dice a git di tradurre URL remoti da HTTP o Git a SSH.

In questo modo, se il tuo repository è configurato per un telecomando HTTP o Git, git ignorerà tale impostazione quando spinge e utilizzerà invece SSH.

[url "git@github.com:"]
    pushInsteadOf = git://github.com/
    pushInsteadOf = https://github.com/

insteadOf =anche possibile un'impostazione per ignorare sia la trazione che la spinta.)

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.