Le lancement d'un push ou de toute autre action avec GitHub à partir de la ligne de commande (via https, pas ssh) qui appelle le nom d'utilisateur et le mot de passe échoue non seulement mais, quand il le fait, il retourne
Username for 'https://github.com': username
Password for 'https://[email protected]':
remote: Invalid username or password.
fatal: Authentication failed for 'https://github.com/username/repository.git/'
Je n'ai pas d' @github.com
adresse. Le mot de passe et le nom d'utilisateur sont corrects.
Je sais que je pourrais passer à SSH et utiliser des clés, mais cela ne répond pas à la raison pour laquelle l'authentification échoue sur https.
Réponses:
Le support de GitHub a immédiatement déterminé la racine du problème: l'autorisation à deux facteurs.
Pour utiliser GitHub sur le shell avec https, créez un jeton OAuth . Comme le note la page, j'ai dû supprimer mes informations d'identification de nom d'utilisateur et de mot de passe du trousseau, mais avec
osx-keychain
en place, le jeton est stocké en tant que mot de passe et les choses fonctionnent exactement comme elles le feraient sur https sans autorisation à deux facteurs en place.la source
Vous n'êtes pas obligé: le
@
est le séparateur entre le nom d'utilisateur: mot de passe et le domaine.Ce n'est pas une adresse e-mail.
Une URL https GitHub complète serait:
Sans le mot de passe (qui serait alors demandé sur la ligne de commande), cela donnerait:
Mais encore une fois, ce
[email protected]
n'est pas une adresse e-mail, juste la première partie des informations d'identification.Assurez-vous que la casse de votre
username
etreponame
est correcte: elle est sensible à la casse .Notez que vous pouvez stocker et crypter vos informations d'identification dans un
.netrc.gpg
(ou_netrc.gpg
sous Windows) si vous ne souhaitez pas mettre lesdites informations en clair dans l'URL.Voir « Existe-t-il un moyen d'ignorer la saisie du mot de passe lors de l'utilisation
https://github
».la source
https://[email protected]/username/reponame.git
.! * ' ( ) ; : @ & = + $ , / ? # [ ]
)? Ils devraient être "encodés en pourcentage" ( en.wikipedia.org/wiki/Percent-encoding ).Cliquez maintenant sur Ajouter un identifiant générique et indiquez les valeurs suivantes
(1) Adresse Internet ou réseau: git: https: //tfs.donamain name (2) username: votre nom d'utilisateur (3) password: votre mot de passe
cela devrait le réparer
la source
Cela peut se produire sous Windows si vous avez déjà stocké des informations d'identification différentes. Accédez à Credential Manager et supprimez les informations d'identification github stockées
la source
[Mac uniquement]
Si vous devez supprimer votre authentification, utilisez
sur Mac.
Voir https://help.github.com/articles/updating-credentials-from-the-osx-keychain/
la source
La même chose s'est produite avec moi, lorsque j'ai activé l'authentification bidirectionnelle pour github. Ce que j'ai fait pour résoudre:
Cela résoudra votre problème.
la source
Juste au cas où cela aide quelqu'un d'autre aussi, j'étais connecté à l'application mac, la ligne de commande fonctionnant bien, mais comme j'ai ensuite activé 2FA, mes commandes renvoyaient l'erreur. J'ai dû me déconnecter de l'application, puis je pourrais utiliser mon jeton d'accès personnel dans mes commandes selon la réponse d'ele ici .
Espérons que cela aide quelqu'un!
la source
Sous Windows, vous pouvez être bloqué en silence par votre antivirus ou votre pare-feu Windows. Désactivez temporairement ces services et poussez / tirez depuis l'origine distante.
la source